Linear.Quaternion:$c/ from linear-1.19.1.3, D

Time bar (total: 5.1s)

start0.0ms (0%)

Memory
0.0MiB live, 0.1MiB allocated

analyze0.0ms (0%)

Memory
0.6MiB live, 0.6MiB allocated
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
100%99.9%0%0.1%0%0%0%1
Compiler

Compiled 17 to 11 computations (35.3% saved)

sample1.5s (29.8%)

Memory
3.1MiB live, 1 185.0MiB allocated
Samples
612.0ms5 779×0valid
551.0ms2 477×1valid
Precisions
Click to see histograms. Total time spent on operations: 705.0ms
ival-mult: 365.0ms (51.8% of total)
ival-sub: 176.0ms (25% of total)
adjust: 82.0ms (11.6% of total)
ival-add: 71.0ms (10.1% of total)
ival-true: 7.0ms (1% of total)
ival-assert: 4.0ms (0.6% of total)
Bogosity

explain150.0ms (2.9%)

Memory
25.7MiB live, 65.6MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
1160-0-(+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y))
140-0-(-.f64 (*.f64 x y) (*.f64 y y))
80-0-(-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z))
00-0-z
00-0-(*.f64 x y)
00-0-y
00-0-(*.f64 y z)
00-0-(*.f64 y y)
00-0-x
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
+.f64(+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y))nan-rescue610
(*.f64 y y)overflow67
(*.f64 x y)overflow35
(-.f64 (*.f64 x y) (*.f64 y y))overflow72
(*.f64 y y)overflow67
+.f64(+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y))cancellation260
-.f64(-.f64 (*.f64 x y) (*.f64 y y))nan-rescue140
(*.f64 x y)overflow35
(*.f64 y y)overflow67
-.f64(-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z))nan-rescue80
(*.f64 y y)overflow134
(+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y))overflow35
(*.f64 x y)overflow35
(-.f64 (*.f64 x y) (*.f64 y y))overflow72
(*.f64 y z)overflow29
Confusion
Predicted +Predicted -
+910
-4161
Precision
0.9578947368421052
Recall
1.0
Confusion?
Predicted +Predicted MaybePredicted -
+9100
-40161
Precision?
0.9578947368421052
Recall?
1.0
Freqs
test
numberfreq
0161
182
212
31
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
29.0ms212×1valid
19.0ms294×0valid
1.0ms2valid
Compiler

Compiled 109 to 31 computations (71.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 29.0ms
ival-mult: 14.0ms (48.5% of total)
ival-sub: 6.0ms (20.8% of total)
adjust: 5.0ms (17.3% of total)
ival-add: 3.0ms (10.4% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

preprocess547.0ms (10.7%)

Memory
7.7MiB live, 322.0MiB allocated
Algorithm
egg-herbie
Rules
33 588×lower-fma.f64
33 588×lower-fma.f32
4 720×lower-+.f32
4 718×lower-+.f64
3 070×lower-*.f32
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
040125
116276
251053
3183247
4532347
5713647
6788247
0915
01513
1339
2917
32335
47425
524015
641875
751405
858085
961135
1062685
1162865
1262865
1362865
081875
Stop Event
iter limit
node limit
iter limit
node limit
Calls
Call 1
Inputs
(-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z))
Outputs
(-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z))
(*.f64 (-.f64 x z) y)
Symmetry

(negabs y)

Compiler

Compiled 15 to 9 computations (40% saved)

eval0.0ms (0%)

Memory
0.5MiB live, 0.5MiB allocated
Compiler

Compiled 0 to 3 computations (-∞% saved)

prune0.0ms (0%)

Memory
1.3MiB live, 1.3MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
65.7%
(-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z))
Compiler

Compiled 15 to 9 computations (40% saved)

simplify422.0ms (8.2%)

Memory
-40.0MiB live, 295.3MiB allocated
Algorithm
egg-herbie
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 x y)
cost-diff320
(-.f64 (*.f64 x y) (*.f64 y y))
cost-diff320
(-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z))
cost-diff704
(+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y))
Rules
33 588×lower-fma.f64
33 588×lower-fma.f32
4 720×lower-+.f32
4 718×lower-+.f64
3 070×lower-*.f32
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0945
01545
13333
29127
323325
474225
5240125
6418725
7514025
8580825
9611325
10626825
11628625
12628625
13628625
0818725
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z))
(+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y))
(-.f64 (*.f64 x y) (*.f64 y y))
(*.f64 x y)
x
y
(*.f64 y y)
(*.f64 y z)
z
Outputs
(-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z))
(*.f64 (-.f64 x z) y)
(+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y))
(*.f64 x y)
(-.f64 (*.f64 x y) (*.f64 y y))
(*.f64 (-.f64 x y) y)
(*.f64 x y)
x
y
(*.f64 y y)
(*.f64 y z)
(*.f64 z y)
z

localize63.0ms (1.2%)

Memory
-8.9MiB live, 69.7MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0
(*.f64 x y)
accuracy1.7539000574906174
(-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z))
accuracy2.796858486641647
(-.f64 (*.f64 x y) (*.f64 y y))
accuracy27.650698760161443
(+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y))
Samples
14.0ms106×1valid
9.0ms147×0valid
1.0ms2valid
Compiler

Compiled 47 to 11 computations (76.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 14.0ms
ival-mult: 7.0ms (49.3% of total)
ival-sub: 3.0ms (21.1% of total)
adjust: 2.0ms (14.1% of total)
ival-add: 2.0ms (14.1% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

series9.0ms (0.2%)

Memory
15.0MiB live, 15.0MiB allocated
Counts
4 → 108
Calls
Call 1
Inputs
#s(alt (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (patch (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) #<representation binary64>) () ())
#s(alt (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) (patch (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) #<representation binary64>) () ())
#s(alt (-.f64 (*.f64 x y) (*.f64 y y)) (patch (-.f64 (*.f64 x y) (*.f64 y y)) #<representation binary64>) () ())
#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())
Outputs
#s(alt (* x y) (taylor 0 z) (#s(alt (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) (patch (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 (* y z)) (* x y)) (taylor 0 z) (#s(alt (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) (patch (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 (* y z)) (* x y)) (taylor 0 z) (#s(alt (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) (patch (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 (* y z)) (* x y)) (taylor 0 z) (#s(alt (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) (patch (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y z)) (taylor inf z) (#s(alt (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) (patch (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) #<representation binary64>) () ())) ())
#s(alt (* z (- (/ (* x y) z) y)) (taylor inf z) (#s(alt (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) (patch (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) #<representation binary64>) () ())) ())
#s(alt (* z (- (/ (* x y) z) y)) (taylor inf z) (#s(alt (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) (patch (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) #<representation binary64>) () ())) ())
#s(alt (* z (- (/ (* x y) z) y)) (taylor inf z) (#s(alt (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) (patch (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y z)) (taylor -inf z) (#s(alt (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) (patch (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (- (* -1 (/ (* x y) z)) (* -1 y)))) (taylor -inf z) (#s(alt (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) (patch (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (- (* -1 (/ (* x y) z)) (* -1 y)))) (taylor -inf z) (#s(alt (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) (patch (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (- (* -1 (/ (* x y) z)) (* -1 y)))) (taylor -inf z) (#s(alt (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) (patch (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 y) (#s(alt (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (patch (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 y) (#s(alt (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (patch (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 y) (#s(alt (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (patch (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 y) (#s(alt (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (patch (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* y (- x z)) (taylor 0 y) (#s(alt (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) (patch (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) #<representation binary64>) () ())) ())
#s(alt (* y (- x z)) (taylor 0 y) (#s(alt (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) (patch (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) #<representation binary64>) () ())) ())
#s(alt (* y (- x z)) (taylor 0 y) (#s(alt (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) (patch (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) #<representation binary64>) () ())) ())
#s(alt (* y (- x z)) (taylor 0 y) (#s(alt (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) (patch (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 y) (#s(alt (-.f64 (*.f64 x y) (*.f64 y y)) (patch (-.f64 (*.f64 x y) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (* -1 y))) (taylor 0 y) (#s(alt (-.f64 (*.f64 x y) (*.f64 y y)) (patch (-.f64 (*.f64 x y) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (* -1 y))) (taylor 0 y) (#s(alt (-.f64 (*.f64 x y) (*.f64 y y)) (patch (-.f64 (*.f64 x y) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (* -1 y))) (taylor 0 y) (#s(alt (-.f64 (*.f64 x y) (*.f64 y y)) (patch (-.f64 (*.f64 x y) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 y) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 y) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 y) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 y) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf y) (#s(alt (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (patch (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf y) (#s(alt (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (patch (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf y) (#s(alt (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (patch (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf y) (#s(alt (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (patch (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* y (- x z)) (taylor inf y) (#s(alt (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) (patch (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) #<representation binary64>) () ())) ())
#s(alt (* y (- x z)) (taylor inf y) (#s(alt (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) (patch (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) #<representation binary64>) () ())) ())
#s(alt (* y (- x z)) (taylor inf y) (#s(alt (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) (patch (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) #<representation binary64>) () ())) ())
#s(alt (* y (- x z)) (taylor inf y) (#s(alt (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) (patch (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (pow y 2)) (taylor inf y) (#s(alt (-.f64 (*.f64 x y) (*.f64 y y)) (patch (-.f64 (*.f64 x y) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (- (/ x y) 1)) (taylor inf y) (#s(alt (-.f64 (*.f64 x y) (*.f64 y y)) (patch (-.f64 (*.f64 x y) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (- (/ x y) 1)) (taylor inf y) (#s(alt (-.f64 (*.f64 x y) (*.f64 y y)) (patch (-.f64 (*.f64 x y) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (- (/ x y) 1)) (taylor inf y) (#s(alt (-.f64 (*.f64 x y) (*.f64 y y)) (patch (-.f64 (*.f64 x y) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf y) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf y) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf y) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf y) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf y) (#s(alt (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (patch (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf y) (#s(alt (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (patch (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf y) (#s(alt (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (patch (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf y) (#s(alt (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (patch (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (* -1 x) (* -1 z)))) (taylor -inf y) (#s(alt (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) (patch (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (* -1 x) (* -1 z)))) (taylor -inf y) (#s(alt (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) (patch (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (* -1 x) (* -1 z)))) (taylor -inf y) (#s(alt (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) (patch (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (* -1 x) (* -1 z)))) (taylor -inf y) (#s(alt (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) (patch (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (pow y 2)) (taylor -inf y) (#s(alt (-.f64 (*.f64 x y) (*.f64 y y)) (patch (-.f64 (*.f64 x y) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (- (/ x y) 1)) (taylor -inf y) (#s(alt (-.f64 (*.f64 x y) (*.f64 y y)) (patch (-.f64 (*.f64 x y) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (- (/ x y) 1)) (taylor -inf y) (#s(alt (-.f64 (*.f64 x y) (*.f64 y y)) (patch (-.f64 (*.f64 x y) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (- (/ x y) 1)) (taylor -inf y) (#s(alt (-.f64 (*.f64 x y) (*.f64 y y)) (patch (-.f64 (*.f64 x y) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf y) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf y) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf y) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf y) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 x) (#s(alt (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (patch (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 x) (#s(alt (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (patch (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 x) (#s(alt (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (patch (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 x) (#s(alt (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (patch (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y z)) (taylor 0 x) (#s(alt (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) (patch (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) #<representation binary64>) () ())) ())
#s(alt (- (* x y) (* y z)) (taylor 0 x) (#s(alt (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) (patch (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) #<representation binary64>) () ())) ())
#s(alt (- (* x y) (* y z)) (taylor 0 x) (#s(alt (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) (patch (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) #<representation binary64>) () ())) ())
#s(alt (- (* x y) (* y z)) (taylor 0 x) (#s(alt (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) (patch (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (pow y 2)) (taylor 0 x) (#s(alt (-.f64 (*.f64 x y) (*.f64 y y)) (patch (-.f64 (*.f64 x y) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (- (* x y) (pow y 2)) (taylor 0 x) (#s(alt (-.f64 (*.f64 x y) (*.f64 y y)) (patch (-.f64 (*.f64 x y) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (- (* x y) (pow y 2)) (taylor 0 x) (#s(alt (-.f64 (*.f64 x y) (*.f64 y y)) (patch (-.f64 (*.f64 x y) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (- (* x y) (pow y 2)) (taylor 0 x) (#s(alt (-.f64 (*.f64 x y) (*.f64 y y)) (patch (-.f64 (*.f64 x y) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 x) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 x) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 x) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 x) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf x) (#s(alt (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (patch (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf x) (#s(alt (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (patch (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf x) (#s(alt (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (patch (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf x) (#s(alt (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (patch (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf x) (#s(alt (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) (patch (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (* -1 (/ (* y z) x)))) (taylor inf x) (#s(alt (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) (patch (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (* -1 (/ (* y z) x)))) (taylor inf x) (#s(alt (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) (patch (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (* -1 (/ (* y z) x)))) (taylor inf x) (#s(alt (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) (patch (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf x) (#s(alt (-.f64 (*.f64 x y) (*.f64 y y)) (patch (-.f64 (*.f64 x y) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (* -1 (/ (pow y 2) x)))) (taylor inf x) (#s(alt (-.f64 (*.f64 x y) (*.f64 y y)) (patch (-.f64 (*.f64 x y) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (* -1 (/ (pow y 2) x)))) (taylor inf x) (#s(alt (-.f64 (*.f64 x y) (*.f64 y y)) (patch (-.f64 (*.f64 x y) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (* -1 (/ (pow y 2) x)))) (taylor inf x) (#s(alt (-.f64 (*.f64 x y) (*.f64 y y)) (patch (-.f64 (*.f64 x y) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf x) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf x) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf x) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf x) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf x) (#s(alt (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (patch (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf x) (#s(alt (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (patch (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf x) (#s(alt (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (patch (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf x) (#s(alt (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (patch (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf x) (#s(alt (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) (patch (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (/ (* y z) x)))) (taylor -inf x) (#s(alt (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) (patch (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (/ (* y z) x)))) (taylor -inf x) (#s(alt (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) (patch (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (/ (* y z) x)))) (taylor -inf x) (#s(alt (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) (patch (-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf x) (#s(alt (-.f64 (*.f64 x y) (*.f64 y y)) (patch (-.f64 (*.f64 x y) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (/ (pow y 2) x)))) (taylor -inf x) (#s(alt (-.f64 (*.f64 x y) (*.f64 y y)) (patch (-.f64 (*.f64 x y) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (/ (pow y 2) x)))) (taylor -inf x) (#s(alt (-.f64 (*.f64 x y) (*.f64 y y)) (patch (-.f64 (*.f64 x y) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (/ (pow y 2) x)))) (taylor -inf x) (#s(alt (-.f64 (*.f64 x y) (*.f64 y y)) (patch (-.f64 (*.f64 x y) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf x) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf x) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf x) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf x) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
Calls

9 calls:

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

simplify173.0ms (3.4%)

Memory
20.6MiB live, 102.8MiB allocated
Algorithm
egg-herbie
Rules
3 996×lower-fma.f64
3 996×lower-fma.f32
2 108×lower-*.f64
2 108×lower-*.f32
1 920×lower-/.f32
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
048504
1151426
2377426
31163426
43336426
55415426
66433426
77432426
87597426
97733426
107832426
08627426
Stop Event
iter limit
node limit
Counts
108 → 108
Calls
Call 1
Inputs
(* x y)
(+ (* -1 (* y z)) (* x y))
(+ (* -1 (* y z)) (* x y))
(+ (* -1 (* y z)) (* x y))
(* -1 (* y z))
(* z (- (/ (* x y) z) y))
(* z (- (/ (* x y) z) y))
(* z (- (/ (* x y) z) y))
(* -1 (* y z))
(* -1 (* z (- (* -1 (/ (* x y) z)) (* -1 y))))
(* -1 (* z (- (* -1 (/ (* x y) z)) (* -1 y))))
(* -1 (* z (- (* -1 (/ (* x y) z)) (* -1 y))))
(* x y)
(* x y)
(* x y)
(* x y)
(* y (- x z))
(* y (- x z))
(* y (- x z))
(* y (- x z))
(* x y)
(* y (+ x (* -1 y)))
(* y (+ x (* -1 y)))
(* y (+ x (* -1 y)))
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* y (- x z))
(* y (- x z))
(* y (- x z))
(* y (- x z))
(* -1 (pow y 2))
(* (pow y 2) (- (/ x y) 1))
(* (pow y 2) (- (/ x y) 1))
(* (pow y 2) (- (/ x y) 1))
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* -1 (* y (- (* -1 x) (* -1 z))))
(* -1 (* y (- (* -1 x) (* -1 z))))
(* -1 (* y (- (* -1 x) (* -1 z))))
(* -1 (* y (- (* -1 x) (* -1 z))))
(* -1 (pow y 2))
(* (pow y 2) (- (/ x y) 1))
(* (pow y 2) (- (/ x y) 1))
(* (pow y 2) (- (/ x y) 1))
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* -1 (* y z))
(- (* x y) (* y z))
(- (* x y) (* y z))
(- (* x y) (* y z))
(* -1 (pow y 2))
(- (* x y) (pow y 2))
(- (* x y) (pow y 2))
(- (* x y) (pow y 2))
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x (+ y (* -1 (/ (* y z) x))))
(* x (+ y (* -1 (/ (* y z) x))))
(* x (+ y (* -1 (/ (* y z) x))))
(* x y)
(* x (+ y (* -1 (/ (pow y 2) x))))
(* x (+ y (* -1 (/ (pow y 2) x))))
(* x (+ y (* -1 (/ (pow y 2) x))))
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* -1 (* x (+ (* -1 y) (/ (* y z) x))))
(* -1 (* x (+ (* -1 y) (/ (* y z) x))))
(* -1 (* x (+ (* -1 y) (/ (* y z) x))))
(* x y)
(* -1 (* x (+ (* -1 y) (/ (pow y 2) x))))
(* -1 (* x (+ (* -1 y) (/ (pow y 2) x))))
(* -1 (* x (+ (* -1 y) (/ (pow y 2) x))))
(* x y)
(* x y)
(* x y)
(* x y)
Outputs
(* x y)
(*.f64 y x)
(+ (* -1 (* y z)) (* x y))
(*.f64 (-.f64 x z) y)
(+ (* -1 (* y z)) (* x y))
(*.f64 (-.f64 x z) y)
(+ (* -1 (* y z)) (* x y))
(*.f64 (-.f64 x z) y)
(* -1 (* y z))
(*.f64 (neg.f64 z) y)
(* z (- (/ (* x y) z) y))
(*.f64 (-.f64 x z) y)
(* z (- (/ (* x y) z) y))
(*.f64 (-.f64 x z) y)
(* z (- (/ (* x y) z) y))
(*.f64 (-.f64 x z) y)
(* -1 (* y z))
(*.f64 (neg.f64 z) y)
(* -1 (* z (- (* -1 (/ (* x y) z)) (* -1 y))))
(*.f64 (-.f64 x z) y)
(* -1 (* z (- (* -1 (/ (* x y) z)) (* -1 y))))
(*.f64 (-.f64 x z) y)
(* -1 (* z (- (* -1 (/ (* x y) z)) (* -1 y))))
(*.f64 (-.f64 x z) y)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* y (- x z))
(*.f64 (-.f64 x z) y)
(* y (- x z))
(*.f64 (-.f64 x z) y)
(* y (- x z))
(*.f64 (-.f64 x z) y)
(* y (- x z))
(*.f64 (-.f64 x z) y)
(* x y)
(*.f64 y x)
(* y (+ x (* -1 y)))
(*.f64 (-.f64 x y) y)
(* y (+ x (* -1 y)))
(*.f64 (-.f64 x y) y)
(* y (+ x (* -1 y)))
(*.f64 (-.f64 x y) y)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* y (- x z))
(*.f64 (-.f64 x z) y)
(* y (- x z))
(*.f64 (-.f64 x z) y)
(* y (- x z))
(*.f64 (-.f64 x z) y)
(* y (- x z))
(*.f64 (-.f64 x z) y)
(* -1 (pow y 2))
(*.f64 (neg.f64 y) y)
(* (pow y 2) (- (/ x y) 1))
(*.f64 (-.f64 x y) y)
(* (pow y 2) (- (/ x y) 1))
(*.f64 (-.f64 x y) y)
(* (pow y 2) (- (/ x y) 1))
(*.f64 (-.f64 x y) y)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* -1 (* y (- (* -1 x) (* -1 z))))
(*.f64 (-.f64 x z) y)
(* -1 (* y (- (* -1 x) (* -1 z))))
(*.f64 (-.f64 x z) y)
(* -1 (* y (- (* -1 x) (* -1 z))))
(*.f64 (-.f64 x z) y)
(* -1 (* y (- (* -1 x) (* -1 z))))
(*.f64 (-.f64 x z) y)
(* -1 (pow y 2))
(*.f64 (neg.f64 y) y)
(* (pow y 2) (- (/ x y) 1))
(*.f64 (-.f64 x y) y)
(* (pow y 2) (- (/ x y) 1))
(*.f64 (-.f64 x y) y)
(* (pow y 2) (- (/ x y) 1))
(*.f64 (-.f64 x y) y)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* -1 (* y z))
(*.f64 (neg.f64 z) y)
(- (* x y) (* y z))
(*.f64 (-.f64 x z) y)
(- (* x y) (* y z))
(*.f64 (-.f64 x z) y)
(- (* x y) (* y z))
(*.f64 (-.f64 x z) y)
(* -1 (pow y 2))
(*.f64 (neg.f64 y) y)
(- (* x y) (pow y 2))
(*.f64 (-.f64 x y) y)
(- (* x y) (pow y 2))
(*.f64 (-.f64 x y) y)
(- (* x y) (pow y 2))
(*.f64 (-.f64 x y) y)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x (+ y (* -1 (/ (* y z) x))))
(*.f64 (-.f64 x z) y)
(* x (+ y (* -1 (/ (* y z) x))))
(*.f64 (-.f64 x z) y)
(* x (+ y (* -1 (/ (* y z) x))))
(*.f64 (-.f64 x z) y)
(* x y)
(*.f64 y x)
(* x (+ y (* -1 (/ (pow y 2) x))))
(*.f64 (-.f64 x y) y)
(* x (+ y (* -1 (/ (pow y 2) x))))
(*.f64 (-.f64 x y) y)
(* x (+ y (* -1 (/ (pow y 2) x))))
(*.f64 (-.f64 x y) y)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* -1 (* x (+ (* -1 y) (/ (* y z) x))))
(*.f64 (-.f64 x z) y)
(* -1 (* x (+ (* -1 y) (/ (* y z) x))))
(*.f64 (-.f64 x z) y)
(* -1 (* x (+ (* -1 y) (/ (* y z) x))))
(*.f64 (-.f64 x z) y)
(* x y)
(*.f64 y x)
(* -1 (* x (+ (* -1 y) (/ (pow y 2) x))))
(*.f64 (-.f64 x y) y)
(* -1 (* x (+ (* -1 y) (/ (pow y 2) x))))
(*.f64 (-.f64 x y) y)
(* -1 (* x (+ (* -1 y) (/ (pow y 2) x))))
(*.f64 (-.f64 x y) y)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)

rewrite308.0ms (6%)

Memory
11.3MiB live, 238.6MiB allocated
Rules
16 524×lower-fma.f64
16 524×lower-fma.f32
5 278×lower-*.f32
5 272×lower-*.f64
3 274×lower-/.f64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0936
01536
17024
266118
0926618
Stop Event
iter limit
node limit
iter limit
Counts
4 → 769
Calls
Call 1
Inputs
(+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y))
(-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z))
(-.f64 (*.f64 x y) (*.f64 y y))
(*.f64 x y)
Outputs
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval133.0ms (2.6%)

Memory
-12.6MiB live, 307.4MiB allocated
Compiler

Compiled 24 833 to 2 206 computations (91.1% saved)

prune18.0ms (0.4%)

Memory
-25.7MiB live, 56.5MiB allocated
Pruning

4 alts after pruning (4 fresh and 0 done)

PrunedKeptTotal
New8734877
Fresh000
Picked101
Done000
Total8744878
Accuracy
100.0%
Counts
878 → 4
Alt Table
Click to see full alt table
StatusAccuracyProgram
97.6%
(fma.f64 (neg.f64 z) y (*.f64 y x))
100.0%
#s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y))
51.8%
#s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y))
54.4%
#s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x))
Compiler

Compiled 22 to 23 computations (-4.5% saved)

simplify272.0ms (5.3%)

Memory
42.2MiB live, 315.6MiB allocated
Algorithm
egg-herbie
Localize:

Found 11 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 y x)
cost-diff0
(neg.f64 z)
cost-diff320
(fma.f64 (neg.f64 z) y (*.f64 y x))
cost-diff0
(-.f64 x z)
cost-diff0
(*.f64 (-.f64 x z) y)
cost-diff0
#s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y))
cost-diff0
(neg.f64 z)
cost-diff0
(*.f64 (neg.f64 z) y)
cost-diff0
#s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y))
cost-diff0
(*.f64 y x)
cost-diff0
#s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x))
Rules
33 516×lower-fma.f32
33 514×lower-fma.f64
4 704×lower-+.f64
4 704×lower-+.f32
3 066×lower-*.f32
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01899
02491
15579
211567
326167
472967
5232467
6403967
7503267
8572367
9603267
10619167
11621167
12621167
13621167
0810267
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
#s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x))
(*.f64 y x)
y
x
#s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y))
(*.f64 (neg.f64 z) y)
(neg.f64 z)
z
y
#s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y))
(*.f64 (-.f64 x z) y)
(-.f64 x z)
x
z
y
(fma.f64 (neg.f64 z) y (*.f64 y x))
(neg.f64 z)
z
y
(*.f64 y x)
x
Outputs
#s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x))
(*.f64 y x)
y
x
#s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y))
(*.f64 (neg.f64 z) y)
(neg.f64 z)
z
y
#s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y))
(*.f64 (-.f64 x z) y)
(-.f64 x z)
x
z
y
(fma.f64 (neg.f64 z) y (*.f64 y x))
(*.f64 (-.f64 x z) y)
(neg.f64 z)
z
y
(*.f64 y x)
x

localize48.0ms (0.9%)

Memory
-0.4MiB live, 116.5MiB allocated
Localize:

Found 11 expressions of interest:

NewMetricScoreProgram
accuracy0
(*.f64 y x)
accuracy0
(neg.f64 z)
accuracy1.5077959856333614
(fma.f64 (neg.f64 z) y (*.f64 y x))
accuracy0
(-.f64 x z)
accuracy0
#s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y))
accuracy0.0234375
(*.f64 (-.f64 x z) y)
accuracy0
(*.f64 (neg.f64 z) y)
accuracy0
(neg.f64 z)
accuracy30.837783733431078
#s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y))
accuracy0
(*.f64 y x)
accuracy29.19889448058197
#s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x))
Samples
21.0ms176×0valid
18.0ms80×1valid
Compiler

Compiled 87 to 17 computations (80.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 23.0ms
ival-mult: 12.0ms (52.1% of total)
ival-sub: 4.0ms (17.4% of total)
adjust: 3.0ms (13% of total)
ival-add: 3.0ms (13% of total)
ival-neg: 1.0ms (4.3% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

series54.0ms (1%)

Memory
-15.2MiB live, 76.6MiB allocated
Counts
9 → 264
Calls
Call 1
Inputs
#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) #<representation binary64>) () ())
#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())
#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) #<representation binary64>) () ())
#s(alt (*.f64 (neg.f64 z) y) (patch (*.f64 (neg.f64 z) y) #<representation binary64>) () ())
#s(alt (neg.f64 z) (patch (neg.f64 z) #<representation binary64>) () ())
#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) #<representation binary64>) () ())
#s(alt (*.f64 (-.f64 x z) y) (patch (*.f64 (-.f64 x z) y) #<representation binary64>) () ())
#s(alt (-.f64 x z) (patch (-.f64 x z) #<representation binary64>) () ())
#s(alt (fma.f64 (neg.f64 z) y (*.f64 y x)) (patch (fma.f64 (neg.f64 z) y (*.f64 y x)) #<representation binary64>) () ())
Outputs
#s(alt (* x y) (taylor 0 z) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 (* y z)) (* x y)) (taylor 0 z) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 (* y z)) (* x y)) (taylor 0 z) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 (* y z)) (* x y)) (taylor 0 z) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 z) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 (* y z)) (* x y)) (taylor 0 z) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 (* y z)) (* x y)) (taylor 0 z) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 (* y z)) (* x y)) (taylor 0 z) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y z)) (taylor 0 z) (#s(alt (*.f64 (neg.f64 z) y) (patch (*.f64 (neg.f64 z) y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y z)) (taylor 0 z) (#s(alt (*.f64 (neg.f64 z) y) (patch (*.f64 (neg.f64 z) y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y z)) (taylor 0 z) (#s(alt (*.f64 (neg.f64 z) y) (patch (*.f64 (neg.f64 z) y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y z)) (taylor 0 z) (#s(alt (*.f64 (neg.f64 z) y) (patch (*.f64 (neg.f64 z) y) #<representation binary64>) () ())) ())
#s(alt (* -1 z) (taylor 0 z) (#s(alt (neg.f64 z) (patch (neg.f64 z) #<representation binary64>) () ())) ())
#s(alt (* -1 z) (taylor 0 z) (#s(alt (neg.f64 z) (patch (neg.f64 z) #<representation binary64>) () ())) ())
#s(alt (* -1 z) (taylor 0 z) (#s(alt (neg.f64 z) (patch (neg.f64 z) #<representation binary64>) () ())) ())
#s(alt (* -1 z) (taylor 0 z) (#s(alt (neg.f64 z) (patch (neg.f64 z) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 z) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 (* y z)) (* x y)) (taylor 0 z) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 (* y z)) (* x y)) (taylor 0 z) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 (* y z)) (* x y)) (taylor 0 z) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 z) (#s(alt (*.f64 (-.f64 x z) y) (patch (*.f64 (-.f64 x z) y) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 (* y z)) (* x y)) (taylor 0 z) (#s(alt (*.f64 (-.f64 x z) y) (patch (*.f64 (-.f64 x z) y) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 (* y z)) (* x y)) (taylor 0 z) (#s(alt (*.f64 (-.f64 x z) y) (patch (*.f64 (-.f64 x z) y) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 (* y z)) (* x y)) (taylor 0 z) (#s(alt (*.f64 (-.f64 x z) y) (patch (*.f64 (-.f64 x z) y) #<representation binary64>) () ())) ())
#s(alt x (taylor 0 z) (#s(alt (-.f64 x z) (patch (-.f64 x z) #<representation binary64>) () ())) ())
#s(alt (+ x (* -1 z)) (taylor 0 z) (#s(alt (-.f64 x z) (patch (-.f64 x z) #<representation binary64>) () ())) ())
#s(alt (+ x (* -1 z)) (taylor 0 z) (#s(alt (-.f64 x z) (patch (-.f64 x z) #<representation binary64>) () ())) ())
#s(alt (+ x (* -1 z)) (taylor 0 z) (#s(alt (-.f64 x z) (patch (-.f64 x z) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 z) (#s(alt (fma.f64 (neg.f64 z) y (*.f64 y x)) (patch (fma.f64 (neg.f64 z) y (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 (* y z)) (* x y)) (taylor 0 z) (#s(alt (fma.f64 (neg.f64 z) y (*.f64 y x)) (patch (fma.f64 (neg.f64 z) y (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 (* y z)) (* x y)) (taylor 0 z) (#s(alt (fma.f64 (neg.f64 z) y (*.f64 y x)) (patch (fma.f64 (neg.f64 z) y (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 (* y z)) (* x y)) (taylor 0 z) (#s(alt (fma.f64 (neg.f64 z) y (*.f64 y x)) (patch (fma.f64 (neg.f64 z) y (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y z)) (taylor inf z) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* z (- (/ (* x y) z) y)) (taylor inf z) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* z (- (/ (* x y) z) y)) (taylor inf z) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* z (- (/ (* x y) z) y)) (taylor inf z) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y z)) (taylor inf z) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) #<representation binary64>) () ())) ())
#s(alt (* z (- (/ (* x y) z) y)) (taylor inf z) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) #<representation binary64>) () ())) ())
#s(alt (* z (- (/ (* x y) z) y)) (taylor inf z) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) #<representation binary64>) () ())) ())
#s(alt (* z (- (/ (* x y) z) y)) (taylor inf z) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y z)) (taylor inf z) (#s(alt (*.f64 (neg.f64 z) y) (patch (*.f64 (neg.f64 z) y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y z)) (taylor inf z) (#s(alt (*.f64 (neg.f64 z) y) (patch (*.f64 (neg.f64 z) y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y z)) (taylor inf z) (#s(alt (*.f64 (neg.f64 z) y) (patch (*.f64 (neg.f64 z) y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y z)) (taylor inf z) (#s(alt (*.f64 (neg.f64 z) y) (patch (*.f64 (neg.f64 z) y) #<representation binary64>) () ())) ())
#s(alt (* -1 z) (taylor inf z) (#s(alt (neg.f64 z) (patch (neg.f64 z) #<representation binary64>) () ())) ())
#s(alt (* -1 z) (taylor inf z) (#s(alt (neg.f64 z) (patch (neg.f64 z) #<representation binary64>) () ())) ())
#s(alt (* -1 z) (taylor inf z) (#s(alt (neg.f64 z) (patch (neg.f64 z) #<representation binary64>) () ())) ())
#s(alt (* -1 z) (taylor inf z) (#s(alt (neg.f64 z) (patch (neg.f64 z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y z)) (taylor inf z) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) #<representation binary64>) () ())) ())
#s(alt (* z (- (/ (* x y) z) y)) (taylor inf z) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) #<representation binary64>) () ())) ())
#s(alt (* z (- (/ (* x y) z) y)) (taylor inf z) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) #<representation binary64>) () ())) ())
#s(alt (* z (- (/ (* x y) z) y)) (taylor inf z) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y z)) (taylor inf z) (#s(alt (*.f64 (-.f64 x z) y) (patch (*.f64 (-.f64 x z) y) #<representation binary64>) () ())) ())
#s(alt (* z (+ (* -1 y) (/ (* x y) z))) (taylor inf z) (#s(alt (*.f64 (-.f64 x z) y) (patch (*.f64 (-.f64 x z) y) #<representation binary64>) () ())) ())
#s(alt (* z (+ (* -1 y) (/ (* x y) z))) (taylor inf z) (#s(alt (*.f64 (-.f64 x z) y) (patch (*.f64 (-.f64 x z) y) #<representation binary64>) () ())) ())
#s(alt (* z (+ (* -1 y) (/ (* x y) z))) (taylor inf z) (#s(alt (*.f64 (-.f64 x z) y) (patch (*.f64 (-.f64 x z) y) #<representation binary64>) () ())) ())
#s(alt (* -1 z) (taylor inf z) (#s(alt (-.f64 x z) (patch (-.f64 x z) #<representation binary64>) () ())) ())
#s(alt (* z (- (/ x z) 1)) (taylor inf z) (#s(alt (-.f64 x z) (patch (-.f64 x z) #<representation binary64>) () ())) ())
#s(alt (* z (- (/ x z) 1)) (taylor inf z) (#s(alt (-.f64 x z) (patch (-.f64 x z) #<representation binary64>) () ())) ())
#s(alt (* z (- (/ x z) 1)) (taylor inf z) (#s(alt (-.f64 x z) (patch (-.f64 x z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y z)) (taylor inf z) (#s(alt (fma.f64 (neg.f64 z) y (*.f64 y x)) (patch (fma.f64 (neg.f64 z) y (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* z (+ (* -1 y) (/ (* x y) z))) (taylor inf z) (#s(alt (fma.f64 (neg.f64 z) y (*.f64 y x)) (patch (fma.f64 (neg.f64 z) y (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* z (+ (* -1 y) (/ (* x y) z))) (taylor inf z) (#s(alt (fma.f64 (neg.f64 z) y (*.f64 y x)) (patch (fma.f64 (neg.f64 z) y (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* z (+ (* -1 y) (/ (* x y) z))) (taylor inf z) (#s(alt (fma.f64 (neg.f64 z) y (*.f64 y x)) (patch (fma.f64 (neg.f64 z) y (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y z)) (taylor -inf z) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (- (* -1 (/ (* x y) z)) (* -1 y)))) (taylor -inf z) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (- (* -1 (/ (* x y) z)) (* -1 y)))) (taylor -inf z) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (- (* -1 (/ (* x y) z)) (* -1 y)))) (taylor -inf z) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y z)) (taylor -inf z) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (- (* -1 (/ (* x y) z)) (* -1 y)))) (taylor -inf z) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (- (* -1 (/ (* x y) z)) (* -1 y)))) (taylor -inf z) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (- (* -1 (/ (* x y) z)) (* -1 y)))) (taylor -inf z) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y z)) (taylor -inf z) (#s(alt (*.f64 (neg.f64 z) y) (patch (*.f64 (neg.f64 z) y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y z)) (taylor -inf z) (#s(alt (*.f64 (neg.f64 z) y) (patch (*.f64 (neg.f64 z) y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y z)) (taylor -inf z) (#s(alt (*.f64 (neg.f64 z) y) (patch (*.f64 (neg.f64 z) y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y z)) (taylor -inf z) (#s(alt (*.f64 (neg.f64 z) y) (patch (*.f64 (neg.f64 z) y) #<representation binary64>) () ())) ())
#s(alt (* -1 z) (taylor -inf z) (#s(alt (neg.f64 z) (patch (neg.f64 z) #<representation binary64>) () ())) ())
#s(alt (* -1 z) (taylor -inf z) (#s(alt (neg.f64 z) (patch (neg.f64 z) #<representation binary64>) () ())) ())
#s(alt (* -1 z) (taylor -inf z) (#s(alt (neg.f64 z) (patch (neg.f64 z) #<representation binary64>) () ())) ())
#s(alt (* -1 z) (taylor -inf z) (#s(alt (neg.f64 z) (patch (neg.f64 z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y z)) (taylor -inf z) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (- (* -1 (/ (* x y) z)) (* -1 y)))) (taylor -inf z) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (- (* -1 (/ (* x y) z)) (* -1 y)))) (taylor -inf z) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (- (* -1 (/ (* x y) z)) (* -1 y)))) (taylor -inf z) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y z)) (taylor -inf z) (#s(alt (*.f64 (-.f64 x z) y) (patch (*.f64 (-.f64 x z) y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (+ y (* -1 (/ (* x y) z))))) (taylor -inf z) (#s(alt (*.f64 (-.f64 x z) y) (patch (*.f64 (-.f64 x z) y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (+ y (* -1 (/ (* x y) z))))) (taylor -inf z) (#s(alt (*.f64 (-.f64 x z) y) (patch (*.f64 (-.f64 x z) y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (+ y (* -1 (/ (* x y) z))))) (taylor -inf z) (#s(alt (*.f64 (-.f64 x z) y) (patch (*.f64 (-.f64 x z) y) #<representation binary64>) () ())) ())
#s(alt (* -1 z) (taylor -inf z) (#s(alt (-.f64 x z) (patch (-.f64 x z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (+ 1 (* -1 (/ x z))))) (taylor -inf z) (#s(alt (-.f64 x z) (patch (-.f64 x z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (+ 1 (* -1 (/ x z))))) (taylor -inf z) (#s(alt (-.f64 x z) (patch (-.f64 x z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (+ 1 (* -1 (/ x z))))) (taylor -inf z) (#s(alt (-.f64 x z) (patch (-.f64 x z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y z)) (taylor -inf z) (#s(alt (fma.f64 (neg.f64 z) y (*.f64 y x)) (patch (fma.f64 (neg.f64 z) y (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (+ y (* -1 (/ (* x y) z))))) (taylor -inf z) (#s(alt (fma.f64 (neg.f64 z) y (*.f64 y x)) (patch (fma.f64 (neg.f64 z) y (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (+ y (* -1 (/ (* x y) z))))) (taylor -inf z) (#s(alt (fma.f64 (neg.f64 z) y (*.f64 y x)) (patch (fma.f64 (neg.f64 z) y (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (+ y (* -1 (/ (* x y) z))))) (taylor -inf z) (#s(alt (fma.f64 (neg.f64 z) y (*.f64 y x)) (patch (fma.f64 (neg.f64 z) y (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* y (- x z)) (taylor 0 y) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* y (- x z)) (taylor 0 y) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* y (- x z)) (taylor 0 y) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* y (- x z)) (taylor 0 y) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 y) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 y) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 y) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 y) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* y (- x z)) (taylor 0 y) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) #<representation binary64>) () ())) ())
#s(alt (* y (- x z)) (taylor 0 y) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) #<representation binary64>) () ())) ())
#s(alt (* y (- x z)) (taylor 0 y) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) #<representation binary64>) () ())) ())
#s(alt (* y (- x z)) (taylor 0 y) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y z)) (taylor 0 y) (#s(alt (*.f64 (neg.f64 z) y) (patch (*.f64 (neg.f64 z) y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y z)) (taylor 0 y) (#s(alt (*.f64 (neg.f64 z) y) (patch (*.f64 (neg.f64 z) y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y z)) (taylor 0 y) (#s(alt (*.f64 (neg.f64 z) y) (patch (*.f64 (neg.f64 z) y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y z)) (taylor 0 y) (#s(alt (*.f64 (neg.f64 z) y) (patch (*.f64 (neg.f64 z) y) #<representation binary64>) () ())) ())
#s(alt (* y (- x z)) (taylor 0 y) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) #<representation binary64>) () ())) ())
#s(alt (* y (- x z)) (taylor 0 y) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) #<representation binary64>) () ())) ())
#s(alt (* y (- x z)) (taylor 0 y) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) #<representation binary64>) () ())) ())
#s(alt (* y (- x z)) (taylor 0 y) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) #<representation binary64>) () ())) ())
#s(alt (* y (- x z)) (taylor 0 y) (#s(alt (*.f64 (-.f64 x z) y) (patch (*.f64 (-.f64 x z) y) #<representation binary64>) () ())) ())
#s(alt (* y (- x z)) (taylor 0 y) (#s(alt (*.f64 (-.f64 x z) y) (patch (*.f64 (-.f64 x z) y) #<representation binary64>) () ())) ())
#s(alt (* y (- x z)) (taylor 0 y) (#s(alt (*.f64 (-.f64 x z) y) (patch (*.f64 (-.f64 x z) y) #<representation binary64>) () ())) ())
#s(alt (* y (- x z)) (taylor 0 y) (#s(alt (*.f64 (-.f64 x z) y) (patch (*.f64 (-.f64 x z) y) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (* -1 z))) (taylor 0 y) (#s(alt (fma.f64 (neg.f64 z) y (*.f64 y x)) (patch (fma.f64 (neg.f64 z) y (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (* -1 z))) (taylor 0 y) (#s(alt (fma.f64 (neg.f64 z) y (*.f64 y x)) (patch (fma.f64 (neg.f64 z) y (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (* -1 z))) (taylor 0 y) (#s(alt (fma.f64 (neg.f64 z) y (*.f64 y x)) (patch (fma.f64 (neg.f64 z) y (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (* -1 z))) (taylor 0 y) (#s(alt (fma.f64 (neg.f64 z) y (*.f64 y x)) (patch (fma.f64 (neg.f64 z) y (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* y (- x z)) (taylor inf y) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* y (- x z)) (taylor inf y) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* y (- x z)) (taylor inf y) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* y (- x z)) (taylor inf y) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf y) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf y) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf y) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf y) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* y (- x z)) (taylor inf y) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) #<representation binary64>) () ())) ())
#s(alt (* y (- x z)) (taylor inf y) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) #<representation binary64>) () ())) ())
#s(alt (* y (- x z)) (taylor inf y) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) #<representation binary64>) () ())) ())
#s(alt (* y (- x z)) (taylor inf y) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y z)) (taylor inf y) (#s(alt (*.f64 (neg.f64 z) y) (patch (*.f64 (neg.f64 z) y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y z)) (taylor inf y) (#s(alt (*.f64 (neg.f64 z) y) (patch (*.f64 (neg.f64 z) y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y z)) (taylor inf y) (#s(alt (*.f64 (neg.f64 z) y) (patch (*.f64 (neg.f64 z) y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y z)) (taylor inf y) (#s(alt (*.f64 (neg.f64 z) y) (patch (*.f64 (neg.f64 z) y) #<representation binary64>) () ())) ())
#s(alt (* y (- x z)) (taylor inf y) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) #<representation binary64>) () ())) ())
#s(alt (* y (- x z)) (taylor inf y) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) #<representation binary64>) () ())) ())
#s(alt (* y (- x z)) (taylor inf y) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) #<representation binary64>) () ())) ())
#s(alt (* y (- x z)) (taylor inf y) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) #<representation binary64>) () ())) ())
#s(alt (* y (- x z)) (taylor inf y) (#s(alt (*.f64 (-.f64 x z) y) (patch (*.f64 (-.f64 x z) y) #<representation binary64>) () ())) ())
#s(alt (* y (- x z)) (taylor inf y) (#s(alt (*.f64 (-.f64 x z) y) (patch (*.f64 (-.f64 x z) y) #<representation binary64>) () ())) ())
#s(alt (* y (- x z)) (taylor inf y) (#s(alt (*.f64 (-.f64 x z) y) (patch (*.f64 (-.f64 x z) y) #<representation binary64>) () ())) ())
#s(alt (* y (- x z)) (taylor inf y) (#s(alt (*.f64 (-.f64 x z) y) (patch (*.f64 (-.f64 x z) y) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (* -1 z))) (taylor inf y) (#s(alt (fma.f64 (neg.f64 z) y (*.f64 y x)) (patch (fma.f64 (neg.f64 z) y (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (* -1 z))) (taylor inf y) (#s(alt (fma.f64 (neg.f64 z) y (*.f64 y x)) (patch (fma.f64 (neg.f64 z) y (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (* -1 z))) (taylor inf y) (#s(alt (fma.f64 (neg.f64 z) y (*.f64 y x)) (patch (fma.f64 (neg.f64 z) y (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (* -1 z))) (taylor inf y) (#s(alt (fma.f64 (neg.f64 z) y (*.f64 y x)) (patch (fma.f64 (neg.f64 z) y (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (* -1 x) (* -1 z)))) (taylor -inf y) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (* -1 x) (* -1 z)))) (taylor -inf y) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (* -1 x) (* -1 z)))) (taylor -inf y) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (* -1 x) (* -1 z)))) (taylor -inf y) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf y) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf y) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf y) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf y) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (* -1 x) (* -1 z)))) (taylor -inf y) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (* -1 x) (* -1 z)))) (taylor -inf y) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (* -1 x) (* -1 z)))) (taylor -inf y) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (* -1 x) (* -1 z)))) (taylor -inf y) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y z)) (taylor -inf y) (#s(alt (*.f64 (neg.f64 z) y) (patch (*.f64 (neg.f64 z) y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y z)) (taylor -inf y) (#s(alt (*.f64 (neg.f64 z) y) (patch (*.f64 (neg.f64 z) y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y z)) (taylor -inf y) (#s(alt (*.f64 (neg.f64 z) y) (patch (*.f64 (neg.f64 z) y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y z)) (taylor -inf y) (#s(alt (*.f64 (neg.f64 z) y) (patch (*.f64 (neg.f64 z) y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (* -1 x) (* -1 z)))) (taylor -inf y) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (* -1 x) (* -1 z)))) (taylor -inf y) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (* -1 x) (* -1 z)))) (taylor -inf y) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (* -1 x) (* -1 z)))) (taylor -inf y) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) #<representation binary64>) () ())) ())
#s(alt (* y (- x z)) (taylor -inf y) (#s(alt (*.f64 (-.f64 x z) y) (patch (*.f64 (-.f64 x z) y) #<representation binary64>) () ())) ())
#s(alt (* y (- x z)) (taylor -inf y) (#s(alt (*.f64 (-.f64 x z) y) (patch (*.f64 (-.f64 x z) y) #<representation binary64>) () ())) ())
#s(alt (* y (- x z)) (taylor -inf y) (#s(alt (*.f64 (-.f64 x z) y) (patch (*.f64 (-.f64 x z) y) #<representation binary64>) () ())) ())
#s(alt (* y (- x z)) (taylor -inf y) (#s(alt (*.f64 (-.f64 x z) y) (patch (*.f64 (-.f64 x z) y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ z (* -1 x)))) (taylor -inf y) (#s(alt (fma.f64 (neg.f64 z) y (*.f64 y x)) (patch (fma.f64 (neg.f64 z) y (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ z (* -1 x)))) (taylor -inf y) (#s(alt (fma.f64 (neg.f64 z) y (*.f64 y x)) (patch (fma.f64 (neg.f64 z) y (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ z (* -1 x)))) (taylor -inf y) (#s(alt (fma.f64 (neg.f64 z) y (*.f64 y x)) (patch (fma.f64 (neg.f64 z) y (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ z (* -1 x)))) (taylor -inf y) (#s(alt (fma.f64 (neg.f64 z) y (*.f64 y x)) (patch (fma.f64 (neg.f64 z) y (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y z)) (taylor 0 x) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (- (* x y) (* y z)) (taylor 0 x) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (- (* x y) (* y z)) (taylor 0 x) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (- (* x y) (* y z)) (taylor 0 x) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 x) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 x) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 x) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 x) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y z)) (taylor 0 x) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) #<representation binary64>) () ())) ())
#s(alt (- (* x y) (* y z)) (taylor 0 x) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) #<representation binary64>) () ())) ())
#s(alt (- (* x y) (* y z)) (taylor 0 x) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) #<representation binary64>) () ())) ())
#s(alt (- (* x y) (* y z)) (taylor 0 x) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y z)) (taylor 0 x) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) #<representation binary64>) () ())) ())
#s(alt (- (* x y) (* y z)) (taylor 0 x) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) #<representation binary64>) () ())) ())
#s(alt (- (* x y) (* y z)) (taylor 0 x) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) #<representation binary64>) () ())) ())
#s(alt (- (* x y) (* y z)) (taylor 0 x) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y z)) (taylor 0 x) (#s(alt (*.f64 (-.f64 x z) y) (patch (*.f64 (-.f64 x z) y) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 (* y z)) (* x y)) (taylor 0 x) (#s(alt (*.f64 (-.f64 x z) y) (patch (*.f64 (-.f64 x z) y) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 (* y z)) (* x y)) (taylor 0 x) (#s(alt (*.f64 (-.f64 x z) y) (patch (*.f64 (-.f64 x z) y) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 (* y z)) (* x y)) (taylor 0 x) (#s(alt (*.f64 (-.f64 x z) y) (patch (*.f64 (-.f64 x z) y) #<representation binary64>) () ())) ())
#s(alt (* -1 z) (taylor 0 x) (#s(alt (-.f64 x z) (patch (-.f64 x z) #<representation binary64>) () ())) ())
#s(alt (- x z) (taylor 0 x) (#s(alt (-.f64 x z) (patch (-.f64 x z) #<representation binary64>) () ())) ())
#s(alt (- x z) (taylor 0 x) (#s(alt (-.f64 x z) (patch (-.f64 x z) #<representation binary64>) () ())) ())
#s(alt (- x z) (taylor 0 x) (#s(alt (-.f64 x z) (patch (-.f64 x z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y z)) (taylor 0 x) (#s(alt (fma.f64 (neg.f64 z) y (*.f64 y x)) (patch (fma.f64 (neg.f64 z) y (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 (* y z)) (* x y)) (taylor 0 x) (#s(alt (fma.f64 (neg.f64 z) y (*.f64 y x)) (patch (fma.f64 (neg.f64 z) y (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 (* y z)) (* x y)) (taylor 0 x) (#s(alt (fma.f64 (neg.f64 z) y (*.f64 y x)) (patch (fma.f64 (neg.f64 z) y (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 (* y z)) (* x y)) (taylor 0 x) (#s(alt (fma.f64 (neg.f64 z) y (*.f64 y x)) (patch (fma.f64 (neg.f64 z) y (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf x) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (* -1 (/ (* y z) x)))) (taylor inf x) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (* -1 (/ (* y z) x)))) (taylor inf x) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (* -1 (/ (* y z) x)))) (taylor inf x) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf x) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf x) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf x) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf x) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf x) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (* -1 (/ (* y z) x)))) (taylor inf x) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (* -1 (/ (* y z) x)))) (taylor inf x) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (* -1 (/ (* y z) x)))) (taylor inf x) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf x) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (* -1 (/ (* y z) x)))) (taylor inf x) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (* -1 (/ (* y z) x)))) (taylor inf x) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (* -1 (/ (* y z) x)))) (taylor inf x) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf x) (#s(alt (*.f64 (-.f64 x z) y) (patch (*.f64 (-.f64 x z) y) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (* -1 (/ (* y z) x)))) (taylor inf x) (#s(alt (*.f64 (-.f64 x z) y) (patch (*.f64 (-.f64 x z) y) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (* -1 (/ (* y z) x)))) (taylor inf x) (#s(alt (*.f64 (-.f64 x z) y) (patch (*.f64 (-.f64 x z) y) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (* -1 (/ (* y z) x)))) (taylor inf x) (#s(alt (*.f64 (-.f64 x z) y) (patch (*.f64 (-.f64 x z) y) #<representation binary64>) () ())) ())
#s(alt x (taylor inf x) (#s(alt (-.f64 x z) (patch (-.f64 x z) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1 (* -1 (/ z x)))) (taylor inf x) (#s(alt (-.f64 x z) (patch (-.f64 x z) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1 (* -1 (/ z x)))) (taylor inf x) (#s(alt (-.f64 x z) (patch (-.f64 x z) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1 (* -1 (/ z x)))) (taylor inf x) (#s(alt (-.f64 x z) (patch (-.f64 x z) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf x) (#s(alt (fma.f64 (neg.f64 z) y (*.f64 y x)) (patch (fma.f64 (neg.f64 z) y (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (* -1 (/ (* y z) x)))) (taylor inf x) (#s(alt (fma.f64 (neg.f64 z) y (*.f64 y x)) (patch (fma.f64 (neg.f64 z) y (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (* -1 (/ (* y z) x)))) (taylor inf x) (#s(alt (fma.f64 (neg.f64 z) y (*.f64 y x)) (patch (fma.f64 (neg.f64 z) y (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (* -1 (/ (* y z) x)))) (taylor inf x) (#s(alt (fma.f64 (neg.f64 z) y (*.f64 y x)) (patch (fma.f64 (neg.f64 z) y (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf x) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (/ (* y z) x)))) (taylor -inf x) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (/ (* y z) x)))) (taylor -inf x) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (/ (* y z) x)))) (taylor -inf x) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf x) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf x) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf x) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf x) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf x) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (/ (* y z) x)))) (taylor -inf x) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (/ (* y z) x)))) (taylor -inf x) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (/ (* y z) x)))) (taylor -inf x) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf x) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (/ (* y z) x)))) (taylor -inf x) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (/ (* y z) x)))) (taylor -inf x) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (/ (* y z) x)))) (taylor -inf x) (#s(alt #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) (patch #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf x) (#s(alt (*.f64 (-.f64 x z) y) (patch (*.f64 (-.f64 x z) y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (/ (* y z) x)))) (taylor -inf x) (#s(alt (*.f64 (-.f64 x z) y) (patch (*.f64 (-.f64 x z) y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (/ (* y z) x)))) (taylor -inf x) (#s(alt (*.f64 (-.f64 x z) y) (patch (*.f64 (-.f64 x z) y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (/ (* y z) x)))) (taylor -inf x) (#s(alt (*.f64 (-.f64 x z) y) (patch (*.f64 (-.f64 x z) y) #<representation binary64>) () ())) ())
#s(alt x (taylor -inf x) (#s(alt (-.f64 x z) (patch (-.f64 x z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (/ z x) 1))) (taylor -inf x) (#s(alt (-.f64 x z) (patch (-.f64 x z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (/ z x) 1))) (taylor -inf x) (#s(alt (-.f64 x z) (patch (-.f64 x z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (/ z x) 1))) (taylor -inf x) (#s(alt (-.f64 x z) (patch (-.f64 x z) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf x) (#s(alt (fma.f64 (neg.f64 z) y (*.f64 y x)) (patch (fma.f64 (neg.f64 z) y (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (/ (* y z) x)))) (taylor -inf x) (#s(alt (fma.f64 (neg.f64 z) y (*.f64 y x)) (patch (fma.f64 (neg.f64 z) y (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (/ (* y z) x)))) (taylor -inf x) (#s(alt (fma.f64 (neg.f64 z) y (*.f64 y x)) (patch (fma.f64 (neg.f64 z) y (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (/ (* y z) x)))) (taylor -inf x) (#s(alt (fma.f64 (neg.f64 z) y (*.f64 y x)) (patch (fma.f64 (neg.f64 z) y (*.f64 y x)) #<representation binary64>) () ())) ())
Calls

9 calls:

TimeVariablePointExpression
39.0ms
z
@-inf
((- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (* y x) (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (* (neg z) y) (neg z) (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (* (- x z) y) (- x z) (+ (* (neg z) y) (* y x)))
2.0ms
x
@-inf
((- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (* y x) (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (* (neg z) y) (neg z) (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (* (- x z) y) (- x z) (+ (* (neg z) y) (* y x)))
1.0ms
y
@-inf
((- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (* y x) (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (* (neg z) y) (neg z) (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (* (- x z) y) (- x z) (+ (* (neg z) y) (* y x)))
1.0ms
y
@0
((- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (* y x) (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (* (neg z) y) (neg z) (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (* (- x z) y) (- x z) (+ (* (neg z) y) (* y x)))
1.0ms
y
@inf
((- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (* y x) (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (* (neg z) y) (neg z) (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (* (- x z) y) (- x z) (+ (* (neg z) y) (* y x)))

simplify182.0ms (3.6%)

Memory
-27.5MiB live, 130.0MiB allocated
Algorithm
egg-herbie
Rules
3 238×associate-/r*
2 872×lower-/.f32
2 872×lower-/.f64
2 624×lower-fma.f64
2 624×lower-fma.f32
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0561410
11901110
24741110
313751110
429231110
540871110
648681110
754841110
856931110
958091110
1063981110
1167121110
1267121110
1367121110
1467121110
081891110
Stop Event
iter limit
node limit
Counts
264 → 261
Calls
Call 1
Inputs
(* x y)
(+ (* -1 (* y z)) (* x y))
(+ (* -1 (* y z)) (* x y))
(+ (* -1 (* y z)) (* x y))
(* x y)
(+ (* -1 (* y z)) (* x y))
(+ (* -1 (* y z)) (* x y))
(+ (* -1 (* y z)) (* x y))
(* -1 (* y z))
(* -1 (* y z))
(* -1 (* y z))
(* -1 (* y z))
(* -1 z)
(* -1 z)
(* -1 z)
(* -1 z)
(* x y)
(+ (* -1 (* y z)) (* x y))
(+ (* -1 (* y z)) (* x y))
(+ (* -1 (* y z)) (* x y))
(* x y)
(+ (* -1 (* y z)) (* x y))
(+ (* -1 (* y z)) (* x y))
(+ (* -1 (* y z)) (* x y))
x
(+ x (* -1 z))
(+ x (* -1 z))
(+ x (* -1 z))
(* x y)
(+ (* -1 (* y z)) (* x y))
(+ (* -1 (* y z)) (* x y))
(+ (* -1 (* y z)) (* x y))
(* -1 (* y z))
(* z (- (/ (* x y) z) y))
(* z (- (/ (* x y) z) y))
(* z (- (/ (* x y) z) y))
(* -1 (* y z))
(* z (- (/ (* x y) z) y))
(* z (- (/ (* x y) z) y))
(* z (- (/ (* x y) z) y))
(* -1 (* y z))
(* -1 (* y z))
(* -1 (* y z))
(* -1 (* y z))
(* -1 z)
(* -1 z)
(* -1 z)
(* -1 z)
(* -1 (* y z))
(* z (- (/ (* x y) z) y))
(* z (- (/ (* x y) z) y))
(* z (- (/ (* x y) z) y))
(* -1 (* y z))
(* z (+ (* -1 y) (/ (* x y) z)))
(* z (+ (* -1 y) (/ (* x y) z)))
(* z (+ (* -1 y) (/ (* x y) z)))
(* -1 z)
(* z (- (/ x z) 1))
(* z (- (/ x z) 1))
(* z (- (/ x z) 1))
(* -1 (* y z))
(* z (+ (* -1 y) (/ (* x y) z)))
(* z (+ (* -1 y) (/ (* x y) z)))
(* z (+ (* -1 y) (/ (* x y) z)))
(* -1 (* y z))
(* -1 (* z (- (* -1 (/ (* x y) z)) (* -1 y))))
(* -1 (* z (- (* -1 (/ (* x y) z)) (* -1 y))))
(* -1 (* z (- (* -1 (/ (* x y) z)) (* -1 y))))
(* -1 (* y z))
(* -1 (* z (- (* -1 (/ (* x y) z)) (* -1 y))))
(* -1 (* z (- (* -1 (/ (* x y) z)) (* -1 y))))
(* -1 (* z (- (* -1 (/ (* x y) z)) (* -1 y))))
(* -1 (* y z))
(* -1 (* y z))
(* -1 (* y z))
(* -1 (* y z))
(* -1 z)
(* -1 z)
(* -1 z)
(* -1 z)
(* -1 (* y z))
(* -1 (* z (- (* -1 (/ (* x y) z)) (* -1 y))))
(* -1 (* z (- (* -1 (/ (* x y) z)) (* -1 y))))
(* -1 (* z (- (* -1 (/ (* x y) z)) (* -1 y))))
(* -1 (* y z))
(* -1 (* z (+ y (* -1 (/ (* x y) z)))))
(* -1 (* z (+ y (* -1 (/ (* x y) z)))))
(* -1 (* z (+ y (* -1 (/ (* x y) z)))))
(* -1 z)
(* -1 (* z (+ 1 (* -1 (/ x z)))))
(* -1 (* z (+ 1 (* -1 (/ x z)))))
(* -1 (* z (+ 1 (* -1 (/ x z)))))
(* -1 (* y z))
(* -1 (* z (+ y (* -1 (/ (* x y) z)))))
(* -1 (* z (+ y (* -1 (/ (* x y) z)))))
(* -1 (* z (+ y (* -1 (/ (* x y) z)))))
(* y (- x z))
(* y (- x z))
(* y (- x z))
(* y (- x z))
(* x y)
(* x y)
(* x y)
(* x y)
(* y (- x z))
(* y (- x z))
(* y (- x z))
(* y (- x z))
(* -1 (* y z))
(* -1 (* y z))
(* -1 (* y z))
(* -1 (* y z))
(* y (- x z))
(* y (- x z))
(* y (- x z))
(* y (- x z))
(* y (- x z))
(* y (- x z))
(* y (- x z))
(* y (- x z))
(* y (+ x (* -1 z)))
(* y (+ x (* -1 z)))
(* y (+ x (* -1 z)))
(* y (+ x (* -1 z)))
(* y (- x z))
(* y (- x z))
(* y (- x z))
(* y (- x z))
(* x y)
(* x y)
(* x y)
(* x y)
(* y (- x z))
(* y (- x z))
(* y (- x z))
(* y (- x z))
(* -1 (* y z))
(* -1 (* y z))
(* -1 (* y z))
(* -1 (* y z))
(* y (- x z))
(* y (- x z))
(* y (- x z))
(* y (- x z))
(* y (- x z))
(* y (- x z))
(* y (- x z))
(* y (- x z))
(* y (+ x (* -1 z)))
(* y (+ x (* -1 z)))
(* y (+ x (* -1 z)))
(* y (+ x (* -1 z)))
(* -1 (* y (- (* -1 x) (* -1 z))))
(* -1 (* y (- (* -1 x) (* -1 z))))
(* -1 (* y (- (* -1 x) (* -1 z))))
(* -1 (* y (- (* -1 x) (* -1 z))))
(* x y)
(* x y)
(* x y)
(* x y)
(* -1 (* y (- (* -1 x) (* -1 z))))
(* -1 (* y (- (* -1 x) (* -1 z))))
(* -1 (* y (- (* -1 x) (* -1 z))))
(* -1 (* y (- (* -1 x) (* -1 z))))
(* -1 (* y z))
(* -1 (* y z))
(* -1 (* y z))
(* -1 (* y z))
(* -1 (* y (- (* -1 x) (* -1 z))))
(* -1 (* y (- (* -1 x) (* -1 z))))
(* -1 (* y (- (* -1 x) (* -1 z))))
(* -1 (* y (- (* -1 x) (* -1 z))))
(* y (- x z))
(* y (- x z))
(* y (- x z))
(* y (- x z))
(* -1 (* y (+ z (* -1 x))))
(* -1 (* y (+ z (* -1 x))))
(* -1 (* y (+ z (* -1 x))))
(* -1 (* y (+ z (* -1 x))))
(* -1 (* y z))
(- (* x y) (* y z))
(- (* x y) (* y z))
(- (* x y) (* y z))
(* x y)
(* x y)
(* x y)
(* x y)
(* -1 (* y z))
(- (* x y) (* y z))
(- (* x y) (* y z))
(- (* x y) (* y z))
(* -1 (* y z))
(- (* x y) (* y z))
(- (* x y) (* y z))
(- (* x y) (* y z))
(* -1 (* y z))
(+ (* -1 (* y z)) (* x y))
(+ (* -1 (* y z)) (* x y))
(+ (* -1 (* y z)) (* x y))
(* -1 z)
(- x z)
(- x z)
(- x z)
(* -1 (* y z))
(+ (* -1 (* y z)) (* x y))
(+ (* -1 (* y z)) (* x y))
(+ (* -1 (* y z)) (* x y))
(* x y)
(* x (+ y (* -1 (/ (* y z) x))))
(* x (+ y (* -1 (/ (* y z) x))))
(* x (+ y (* -1 (/ (* y z) x))))
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x (+ y (* -1 (/ (* y z) x))))
(* x (+ y (* -1 (/ (* y z) x))))
(* x (+ y (* -1 (/ (* y z) x))))
(* x y)
(* x (+ y (* -1 (/ (* y z) x))))
(* x (+ y (* -1 (/ (* y z) x))))
(* x (+ y (* -1 (/ (* y z) x))))
(* x y)
(* x (+ y (* -1 (/ (* y z) x))))
(* x (+ y (* -1 (/ (* y z) x))))
(* x (+ y (* -1 (/ (* y z) x))))
x
(* x (+ 1 (* -1 (/ z x))))
(* x (+ 1 (* -1 (/ z x))))
(* x (+ 1 (* -1 (/ z x))))
(* x y)
(* x (+ y (* -1 (/ (* y z) x))))
(* x (+ y (* -1 (/ (* y z) x))))
(* x (+ y (* -1 (/ (* y z) x))))
(* x y)
(* -1 (* x (+ (* -1 y) (/ (* y z) x))))
(* -1 (* x (+ (* -1 y) (/ (* y z) x))))
(* -1 (* x (+ (* -1 y) (/ (* y z) x))))
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* -1 (* x (+ (* -1 y) (/ (* y z) x))))
(* -1 (* x (+ (* -1 y) (/ (* y z) x))))
(* -1 (* x (+ (* -1 y) (/ (* y z) x))))
(* x y)
(* -1 (* x (+ (* -1 y) (/ (* y z) x))))
(* -1 (* x (+ (* -1 y) (/ (* y z) x))))
(* -1 (* x (+ (* -1 y) (/ (* y z) x))))
(* x y)
(* -1 (* x (+ (* -1 y) (/ (* y z) x))))
(* -1 (* x (+ (* -1 y) (/ (* y z) x))))
(* -1 (* x (+ (* -1 y) (/ (* y z) x))))
x
(* -1 (* x (- (/ z x) 1)))
(* -1 (* x (- (/ z x) 1)))
(* -1 (* x (- (/ z x) 1)))
(* x y)
(* -1 (* x (+ (* -1 y) (/ (* y z) x))))
(* -1 (* x (+ (* -1 y) (/ (* y z) x))))
(* -1 (* x (+ (* -1 y) (/ (* y z) x))))
Outputs
(* x y)
(*.f64 y x)
(+ (* -1 (* y z)) (* x y))
(*.f64 (-.f64 x z) y)
(+ (* -1 (* y z)) (* x y))
(*.f64 (-.f64 x z) y)
(+ (* -1 (* y z)) (* x y))
(*.f64 (-.f64 x z) y)
(* x y)
(*.f64 y x)
(+ (* -1 (* y z)) (* x y))
(*.f64 (-.f64 x z) y)
(+ (* -1 (* y z)) (* x y))
(*.f64 (-.f64 x z) y)
(+ (* -1 (* y z)) (* x y))
(*.f64 (-.f64 x z) y)
(* -1 (* y z))
(*.f64 (neg.f64 y) z)
(* -1 (* y z))
(*.f64 (neg.f64 y) z)
(* -1 (* y z))
(*.f64 (neg.f64 y) z)
(* -1 (* y z))
(*.f64 (neg.f64 y) z)
(* -1 z)
(neg.f64 z)
(* -1 z)
(neg.f64 z)
(* -1 z)
(neg.f64 z)
(* -1 z)
(neg.f64 z)
(* x y)
(*.f64 y x)
(+ (* -1 (* y z)) (* x y))
(*.f64 (-.f64 x z) y)
(+ (* -1 (* y z)) (* x y))
(*.f64 (-.f64 x z) y)
(+ (* -1 (* y z)) (* x y))
(*.f64 (-.f64 x z) y)
(* x y)
(*.f64 y x)
(+ (* -1 (* y z)) (* x y))
(*.f64 (-.f64 x z) y)
(+ (* -1 (* y z)) (* x y))
(*.f64 (-.f64 x z) y)
(+ (* -1 (* y z)) (* x y))
(*.f64 (-.f64 x z) y)
x
(+ x (* -1 z))
(-.f64 x z)
(+ x (* -1 z))
(-.f64 x z)
(+ x (* -1 z))
(-.f64 x z)
(* x y)
(*.f64 y x)
(+ (* -1 (* y z)) (* x y))
(*.f64 (-.f64 x z) y)
(+ (* -1 (* y z)) (* x y))
(*.f64 (-.f64 x z) y)
(+ (* -1 (* y z)) (* x y))
(*.f64 (-.f64 x z) y)
(* -1 (* y z))
(*.f64 (neg.f64 y) z)
(* z (- (/ (* x y) z) y))
(*.f64 (-.f64 x z) y)
(* z (- (/ (* x y) z) y))
(*.f64 (-.f64 x z) y)
(* z (- (/ (* x y) z) y))
(*.f64 (-.f64 x z) y)
(* -1 (* y z))
(*.f64 (neg.f64 y) z)
(* z (- (/ (* x y) z) y))
(*.f64 (-.f64 x z) y)
(* z (- (/ (* x y) z) y))
(*.f64 (-.f64 x z) y)
(* z (- (/ (* x y) z) y))
(*.f64 (-.f64 x z) y)
(* -1 (* y z))
(*.f64 (neg.f64 y) z)
(* -1 (* y z))
(*.f64 (neg.f64 y) z)
(* -1 (* y z))
(*.f64 (neg.f64 y) z)
(* -1 (* y z))
(*.f64 (neg.f64 y) z)
(* -1 z)
(neg.f64 z)
(* -1 z)
(neg.f64 z)
(* -1 z)
(neg.f64 z)
(* -1 z)
(neg.f64 z)
(* -1 (* y z))
(*.f64 (neg.f64 y) z)
(* z (- (/ (* x y) z) y))
(*.f64 (-.f64 x z) y)
(* z (- (/ (* x y) z) y))
(*.f64 (-.f64 x z) y)
(* z (- (/ (* x y) z) y))
(*.f64 (-.f64 x z) y)
(* -1 (* y z))
(*.f64 (neg.f64 y) z)
(* z (+ (* -1 y) (/ (* x y) z)))
(*.f64 (-.f64 x z) y)
(* z (+ (* -1 y) (/ (* x y) z)))
(*.f64 (-.f64 x z) y)
(* z (+ (* -1 y) (/ (* x y) z)))
(*.f64 (-.f64 x z) y)
(* -1 z)
(neg.f64 z)
(* z (- (/ x z) 1))
(-.f64 x z)
(* z (- (/ x z) 1))
(-.f64 x z)
(* z (- (/ x z) 1))
(-.f64 x z)
(* -1 (* y z))
(*.f64 (neg.f64 y) z)
(* z (+ (* -1 y) (/ (* x y) z)))
(*.f64 (-.f64 x z) y)
(* z (+ (* -1 y) (/ (* x y) z)))
(*.f64 (-.f64 x z) y)
(* z (+ (* -1 y) (/ (* x y) z)))
(*.f64 (-.f64 x z) y)
(* -1 (* y z))
(*.f64 (neg.f64 y) z)
(* -1 (* z (- (* -1 (/ (* x y) z)) (* -1 y))))
(*.f64 (-.f64 x z) y)
(* -1 (* z (- (* -1 (/ (* x y) z)) (* -1 y))))
(*.f64 (-.f64 x z) y)
(* -1 (* z (- (* -1 (/ (* x y) z)) (* -1 y))))
(*.f64 (-.f64 x z) y)
(* -1 (* y z))
(*.f64 (neg.f64 y) z)
(* -1 (* z (- (* -1 (/ (* x y) z)) (* -1 y))))
(*.f64 (-.f64 x z) y)
(* -1 (* z (- (* -1 (/ (* x y) z)) (* -1 y))))
(*.f64 (-.f64 x z) y)
(* -1 (* z (- (* -1 (/ (* x y) z)) (* -1 y))))
(*.f64 (-.f64 x z) y)
(* -1 (* y z))
(*.f64 (neg.f64 y) z)
(* -1 (* y z))
(*.f64 (neg.f64 y) z)
(* -1 (* y z))
(*.f64 (neg.f64 y) z)
(* -1 (* y z))
(*.f64 (neg.f64 y) z)
(* -1 z)
(neg.f64 z)
(* -1 z)
(neg.f64 z)
(* -1 z)
(neg.f64 z)
(* -1 z)
(neg.f64 z)
(* -1 (* y z))
(*.f64 (neg.f64 y) z)
(* -1 (* z (- (* -1 (/ (* x y) z)) (* -1 y))))
(*.f64 (-.f64 x z) y)
(* -1 (* z (- (* -1 (/ (* x y) z)) (* -1 y))))
(*.f64 (-.f64 x z) y)
(* -1 (* z (- (* -1 (/ (* x y) z)) (* -1 y))))
(*.f64 (-.f64 x z) y)
(* -1 (* y z))
(*.f64 (neg.f64 y) z)
(* -1 (* z (+ y (* -1 (/ (* x y) z)))))
(*.f64 (-.f64 x z) y)
(* -1 (* z (+ y (* -1 (/ (* x y) z)))))
(*.f64 (-.f64 x z) y)
(* -1 (* z (+ y (* -1 (/ (* x y) z)))))
(*.f64 (-.f64 x z) y)
(* -1 z)
(neg.f64 z)
(* -1 (* z (+ 1 (* -1 (/ x z)))))
(-.f64 x z)
(* -1 (* z (+ 1 (* -1 (/ x z)))))
(-.f64 x z)
(* -1 (* z (+ 1 (* -1 (/ x z)))))
(-.f64 x z)
(* -1 (* y z))
(*.f64 (neg.f64 y) z)
(* -1 (* z (+ y (* -1 (/ (* x y) z)))))
(*.f64 (-.f64 x z) y)
(* -1 (* z (+ y (* -1 (/ (* x y) z)))))
(*.f64 (-.f64 x z) y)
(* -1 (* z (+ y (* -1 (/ (* x y) z)))))
(*.f64 (-.f64 x z) y)
(* y (- x z))
(*.f64 (-.f64 x z) y)
(* y (- x z))
(*.f64 (-.f64 x z) y)
(* y (- x z))
(*.f64 (-.f64 x z) y)
(* y (- x z))
(*.f64 (-.f64 x z) y)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* y (- x z))
(*.f64 (-.f64 x z) y)
(* y (- x z))
(*.f64 (-.f64 x z) y)
(* y (- x z))
(*.f64 (-.f64 x z) y)
(* y (- x z))
(*.f64 (-.f64 x z) y)
(* -1 (* y z))
(*.f64 (neg.f64 y) z)
(* -1 (* y z))
(*.f64 (neg.f64 y) z)
(* -1 (* y z))
(*.f64 (neg.f64 y) z)
(* -1 (* y z))
(*.f64 (neg.f64 y) z)
(* y (- x z))
(*.f64 (-.f64 x z) y)
(* y (- x z))
(*.f64 (-.f64 x z) y)
(* y (- x z))
(*.f64 (-.f64 x z) y)
(* y (- x z))
(*.f64 (-.f64 x z) y)
(* y (- x z))
(*.f64 (-.f64 x z) y)
(* y (- x z))
(*.f64 (-.f64 x z) y)
(* y (- x z))
(*.f64 (-.f64 x z) y)
(* y (- x z))
(*.f64 (-.f64 x z) y)
(* y (+ x (* -1 z)))
(*.f64 (-.f64 x z) y)
(* y (+ x (* -1 z)))
(*.f64 (-.f64 x z) y)
(* y (+ x (* -1 z)))
(*.f64 (-.f64 x z) y)
(* y (+ x (* -1 z)))
(*.f64 (-.f64 x z) y)
(* y (- x z))
(*.f64 (-.f64 x z) y)
(* y (- x z))
(*.f64 (-.f64 x z) y)
(* y (- x z))
(*.f64 (-.f64 x z) y)
(* y (- x z))
(*.f64 (-.f64 x z) y)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* y (- x z))
(*.f64 (-.f64 x z) y)
(* y (- x z))
(*.f64 (-.f64 x z) y)
(* y (- x z))
(*.f64 (-.f64 x z) y)
(* y (- x z))
(*.f64 (-.f64 x z) y)
(* -1 (* y z))
(*.f64 (neg.f64 y) z)
(* -1 (* y z))
(*.f64 (neg.f64 y) z)
(* -1 (* y z))
(*.f64 (neg.f64 y) z)
(* -1 (* y z))
(*.f64 (neg.f64 y) z)
(* y (- x z))
(*.f64 (-.f64 x z) y)
(* y (- x z))
(*.f64 (-.f64 x z) y)
(* y (- x z))
(*.f64 (-.f64 x z) y)
(* y (- x z))
(*.f64 (-.f64 x z) y)
(* y (- x z))
(*.f64 (-.f64 x z) y)
(* y (- x z))
(*.f64 (-.f64 x z) y)
(* y (- x z))
(*.f64 (-.f64 x z) y)
(* y (- x z))
(*.f64 (-.f64 x z) y)
(* y (+ x (* -1 z)))
(*.f64 (-.f64 x z) y)
(* y (+ x (* -1 z)))
(*.f64 (-.f64 x z) y)
(* y (+ x (* -1 z)))
(*.f64 (-.f64 x z) y)
(* y (+ x (* -1 z)))
(*.f64 (-.f64 x z) y)
(* -1 (* y (- (* -1 x) (* -1 z))))
(*.f64 (-.f64 x z) y)
(* -1 (* y (- (* -1 x) (* -1 z))))
(*.f64 (-.f64 x z) y)
(* -1 (* y (- (* -1 x) (* -1 z))))
(*.f64 (-.f64 x z) y)
(* -1 (* y (- (* -1 x) (* -1 z))))
(*.f64 (-.f64 x z) y)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* -1 (* y (- (* -1 x) (* -1 z))))
(*.f64 (-.f64 x z) y)
(* -1 (* y (- (* -1 x) (* -1 z))))
(*.f64 (-.f64 x z) y)
(* -1 (* y (- (* -1 x) (* -1 z))))
(*.f64 (-.f64 x z) y)
(* -1 (* y (- (* -1 x) (* -1 z))))
(*.f64 (-.f64 x z) y)
(* -1 (* y z))
(*.f64 (neg.f64 y) z)
(* -1 (* y z))
(*.f64 (neg.f64 y) z)
(* -1 (* y z))
(*.f64 (neg.f64 y) z)
(* -1 (* y z))
(*.f64 (neg.f64 y) z)
(* -1 (* y (- (* -1 x) (* -1 z))))
(*.f64 (-.f64 x z) y)
(* -1 (* y (- (* -1 x) (* -1 z))))
(*.f64 (-.f64 x z) y)
(* -1 (* y (- (* -1 x) (* -1 z))))
(*.f64 (-.f64 x z) y)
(* -1 (* y (- (* -1 x) (* -1 z))))
(*.f64 (-.f64 x z) y)
(* y (- x z))
(*.f64 (-.f64 x z) y)
(* y (- x z))
(*.f64 (-.f64 x z) y)
(* y (- x z))
(*.f64 (-.f64 x z) y)
(* y (- x z))
(*.f64 (-.f64 x z) y)
(* -1 (* y (+ z (* -1 x))))
(*.f64 (-.f64 x z) y)
(* -1 (* y (+ z (* -1 x))))
(*.f64 (-.f64 x z) y)
(* -1 (* y (+ z (* -1 x))))
(*.f64 (-.f64 x z) y)
(* -1 (* y (+ z (* -1 x))))
(*.f64 (-.f64 x z) y)
(* -1 (* y z))
(*.f64 (neg.f64 y) z)
(- (* x y) (* y z))
(*.f64 (-.f64 x z) y)
(- (* x y) (* y z))
(*.f64 (-.f64 x z) y)
(- (* x y) (* y z))
(*.f64 (-.f64 x z) y)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* -1 (* y z))
(*.f64 (neg.f64 y) z)
(- (* x y) (* y z))
(*.f64 (-.f64 x z) y)
(- (* x y) (* y z))
(*.f64 (-.f64 x z) y)
(- (* x y) (* y z))
(*.f64 (-.f64 x z) y)
(* -1 (* y z))
(*.f64 (neg.f64 y) z)
(- (* x y) (* y z))
(*.f64 (-.f64 x z) y)
(- (* x y) (* y z))
(*.f64 (-.f64 x z) y)
(- (* x y) (* y z))
(*.f64 (-.f64 x z) y)
(* -1 (* y z))
(*.f64 (neg.f64 y) z)
(+ (* -1 (* y z)) (* x y))
(*.f64 (-.f64 x z) y)
(+ (* -1 (* y z)) (* x y))
(*.f64 (-.f64 x z) y)
(+ (* -1 (* y z)) (* x y))
(*.f64 (-.f64 x z) y)
(* -1 z)
(neg.f64 z)
(- x z)
(-.f64 x z)
(- x z)
(-.f64 x z)
(- x z)
(-.f64 x z)
(* -1 (* y z))
(*.f64 (neg.f64 y) z)
(+ (* -1 (* y z)) (* x y))
(*.f64 (-.f64 x z) y)
(+ (* -1 (* y z)) (* x y))
(*.f64 (-.f64 x z) y)
(+ (* -1 (* y z)) (* x y))
(*.f64 (-.f64 x z) y)
(* x y)
(*.f64 y x)
(* x (+ y (* -1 (/ (* y z) x))))
(*.f64 (-.f64 x z) y)
(* x (+ y (* -1 (/ (* y z) x))))
(*.f64 (-.f64 x z) y)
(* x (+ y (* -1 (/ (* y z) x))))
(*.f64 (-.f64 x z) y)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x (+ y (* -1 (/ (* y z) x))))
(*.f64 (-.f64 x z) y)
(* x (+ y (* -1 (/ (* y z) x))))
(*.f64 (-.f64 x z) y)
(* x (+ y (* -1 (/ (* y z) x))))
(*.f64 (-.f64 x z) y)
(* x y)
(*.f64 y x)
(* x (+ y (* -1 (/ (* y z) x))))
(*.f64 (-.f64 x z) y)
(* x (+ y (* -1 (/ (* y z) x))))
(*.f64 (-.f64 x z) y)
(* x (+ y (* -1 (/ (* y z) x))))
(*.f64 (-.f64 x z) y)
(* x y)
(*.f64 y x)
(* x (+ y (* -1 (/ (* y z) x))))
(*.f64 (-.f64 x z) y)
(* x (+ y (* -1 (/ (* y z) x))))
(*.f64 (-.f64 x z) y)
(* x (+ y (* -1 (/ (* y z) x))))
(*.f64 (-.f64 x z) y)
x
(* x (+ 1 (* -1 (/ z x))))
(-.f64 x z)
(* x (+ 1 (* -1 (/ z x))))
(-.f64 x z)
(* x (+ 1 (* -1 (/ z x))))
(-.f64 x z)
(* x y)
(*.f64 y x)
(* x (+ y (* -1 (/ (* y z) x))))
(*.f64 (-.f64 x z) y)
(* x (+ y (* -1 (/ (* y z) x))))
(*.f64 (-.f64 x z) y)
(* x (+ y (* -1 (/ (* y z) x))))
(*.f64 (-.f64 x z) y)
(* x y)
(*.f64 y x)
(* -1 (* x (+ (* -1 y) (/ (* y z) x))))
(*.f64 (-.f64 x z) y)
(* -1 (* x (+ (* -1 y) (/ (* y z) x))))
(*.f64 (-.f64 x z) y)
(* -1 (* x (+ (* -1 y) (/ (* y z) x))))
(*.f64 (-.f64 x z) y)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* -1 (* x (+ (* -1 y) (/ (* y z) x))))
(*.f64 (-.f64 x z) y)
(* -1 (* x (+ (* -1 y) (/ (* y z) x))))
(*.f64 (-.f64 x z) y)
(* -1 (* x (+ (* -1 y) (/ (* y z) x))))
(*.f64 (-.f64 x z) y)
(* x y)
(*.f64 y x)
(* -1 (* x (+ (* -1 y) (/ (* y z) x))))
(*.f64 (-.f64 x z) y)
(* -1 (* x (+ (* -1 y) (/ (* y z) x))))
(*.f64 (-.f64 x z) y)
(* -1 (* x (+ (* -1 y) (/ (* y z) x))))
(*.f64 (-.f64 x z) y)
(* x y)
(*.f64 y x)
(* -1 (* x (+ (* -1 y) (/ (* y z) x))))
(*.f64 (-.f64 x z) y)
(* -1 (* x (+ (* -1 y) (/ (* y z) x))))
(*.f64 (-.f64 x z) y)
(* -1 (* x (+ (* -1 y) (/ (* y z) x))))
(*.f64 (-.f64 x z) y)
x
(* -1 (* x (- (/ z x) 1)))
(-.f64 x z)
(* -1 (* x (- (/ z x) 1)))
(-.f64 x z)
(* -1 (* x (- (/ z x) 1)))
(-.f64 x z)
(* x y)
(*.f64 y x)
(* -1 (* x (+ (* -1 y) (/ (* y z) x))))
(*.f64 (-.f64 x z) y)
(* -1 (* x (+ (* -1 y) (/ (* y z) x))))
(*.f64 (-.f64 x z) y)
(* -1 (* x (+ (* -1 y) (/ (* y z) x))))
(*.f64 (-.f64 x z) y)

rewrite167.0ms (3.3%)

Memory
10.6MiB live, 326.2MiB allocated
Rules
11 720×lower-fma.f32
11 718×lower-fma.f64
4 008×lower-*.f32
4 002×lower-*.f64
3 018×lower-/.f64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01884
02476
112164
296852
0902952
Stop Event
iter limit
node limit
iter limit
Counts
9 → 688
Calls
Call 1
Inputs
#s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x))
(*.f64 y x)
#s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y))
(*.f64 (neg.f64 z) y)
(neg.f64 z)
#s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y))
(*.f64 (-.f64 x z) y)
(-.f64 x z)
(fma.f64 (neg.f64 z) y (*.f64 y x))
Outputs
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval154.0ms (3%)

Memory
38.5MiB live, 388.1MiB allocated
Compiler

Compiled 21 770 to 1 681 computations (92.3% saved)

prune40.0ms (0.8%)

Memory
1.6MiB live, 122.7MiB allocated
Pruning

4 alts after pruning (0 fresh and 4 done)

PrunedKeptTotal
New1 14601 146
Fresh000
Picked044
Done000
Total1 14641 150
Accuracy
100.0%
Counts
1 150 → 4
Alt Table
Click to see full alt table
StatusAccuracyProgram
97.6%
(fma.f64 (neg.f64 z) y (*.f64 y x))
100.0%
#s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y))
51.8%
#s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y))
54.4%
#s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x))
Compiler

Compiled 59 to 41 computations (30.5% saved)

regimes11.0ms (0.2%)

Memory
-5.3MiB live, 34.0MiB allocated
Counts
5 → 1
Calls
Call 1
Inputs
#s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x))
#s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y))
#s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y))
(fma.f64 (neg.f64 z) y (*.f64 y x))
(-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z))
Outputs
#s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y))
Calls

4 calls:

3.0ms
(-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z))
2.0ms
x
2.0ms
z
2.0ms
y
Results
AccuracySegmentsBranch
100.0%1x
100.0%1y
100.0%1z
100.0%1(-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z))
Compiler

Compiled 18 to 18 computations (0% saved)

regimes7.0ms (0.1%)

Memory
-18.5MiB live, 20.9MiB allocated
Counts
2 → 3
Calls
Call 1
Inputs
#s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x))
#s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y))
Outputs
#s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y))
#s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x))
#s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y))
Calls

4 calls:

2.0ms
z
2.0ms
x
2.0ms
y
2.0ms
(-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z))
Results
AccuracySegmentsBranch
78.4%3x
64.1%5y
82.2%3z
58.3%2(-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z))
Compiler

Compiled 18 to 18 computations (0% saved)

regimes6.0ms (0.1%)

Memory
19.5MiB live, 19.5MiB allocated
Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

Counts
1 → 1
Calls
Call 1
Inputs
#s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x))
Outputs
#s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x))
Calls

4 calls:

1.0ms
(-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z))
1.0ms
z
1.0ms
y
1.0ms
x
Results
AccuracySegmentsBranch
54.4%1(-.f64 (+.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y y)) (*.f64 y z))
54.4%1y
54.4%1x
54.4%1z
Compiler

Compiled 18 to 18 computations (0% saved)

bsearch42.0ms (0.8%)

Memory
-11.5MiB live, 107.8MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
20.0ms
1.4221968237157666e+71
2.4172446486942106e+83
18.0ms
-4.3426788982742926e-106
-7.330700969783967e-114
Samples
13.0ms98×1valid
12.0ms206×0valid
Compiler

Compiled 189 to 262 computations (-38.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 17.0ms
ival-mult: 8.0ms (46% of total)
adjust: 4.0ms (23% of total)
ival-sub: 3.0ms (17.2% of total)
ival-add: 3.0ms (17.2% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

simplify23.0ms (0.5%)

Memory
19.0MiB live, 58.3MiB allocated
Algorithm
egg-herbie
Rules
14×*-commutative-binary64-*.f64
+-commutative-binary64-+.f64
sub-neg-binary64-neg.f64-+.f64--.f64
neg-sub0-binary64--.f64-neg.f64
neg-mul-1-binary64-*.f64-neg.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
023107
133107
242107
349107
452107
553107
Stop Event
saturated
Calls
Call 1
Inputs
#s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y))
(if (<=.f64 z #s(literal -842846360207567/165263992197562149737978827008192759957101170741070304821162198818601447809077836456297302609928821211897803006255839576064 binary64)) #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) (if (<=.f64 z #s(literal 6500000000000000363740643816709202249024376239395163687580468973864404266254336 binary64)) #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y))))
#s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x))
Outputs
#s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (-.f64 x z) y))
(if (<=.f64 z #s(literal -842846360207567/165263992197562149737978827008192759957101170741070304821162198818601447809077836456297302609928821211897803006255839576064 binary64)) #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y)) (if (<=.f64 z #s(literal 6500000000000000363740643816709202249024376239395163687580468973864404266254336 binary64)) #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x)) #s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 (neg.f64 z) y))))
#s(approx (- (+ (- (* x y) (* y y)) (* y y)) (* y z)) (*.f64 y x))

soundness724.0ms (14.1%)

Memory
-31.3MiB live, 178.8MiB allocated
Rules
3 996×lower-fma.f64
3 996×lower-fma.f32
2 108×lower-*.f64
2 108×lower-*.f32
1 920×lower-/.f32
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
048504
1151426
2377426
31163426
43336426
55415426
66433426
77432426
87597426
97733426
107832426
08627426
Stop Event
done
iter limit
node limit
Compiler

Compiled 47 to 35 computations (25.5% saved)

preprocess42.0ms (0.8%)

Memory
5.9MiB live, 120.4MiB allocated
Remove

(negabs y)

Compiler

Compiled 116 to 74 computations (36.2% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...