Graphics.Rendering.Chart.Drawing:drawTextsR from Chart-1.5.3

Time bar (total: 5.8s)

start0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated

analyze0.0ms (0%)

Memory
0.5MiB live, 0.5MiB 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 11 to 10 computations (9.1% saved)

sample903.0ms (15.5%)

Memory
19.2MiB live, 1 358.0MiB allocated
Samples
580.0ms8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 290.0ms
ival-mult: 173.0ms (59.6% of total)
ival-add: 52.0ms (17.9% of total)
ival-sub: 49.0ms (16.9% of total)
ival-true: 6.0ms (2.1% of total)
exact: 6.0ms (2.1% of total)
ival-assert: 3.0ms (1% of total)
Bogosity

explain204.0ms (3.5%)

Memory
25.4MiB live, 221.9MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
90-0-(+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z))
00-0-(*.f64 (-.f64 x #s(literal 1 binary64)) z)
00-0-y
00-0-(-.f64 x #s(literal 1 binary64))
00-0-#s(literal 1 binary64)
00-0-z
00-0-(*.f64 x y)
00-0-x
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
+.f64(+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z))nan-rescue90
(*.f64 x y)overflow32
(*.f64 (-.f64 x #s(literal 1 binary64)) z)overflow26
Confusion
Predicted +Predicted -
+90
-0247
Precision
1.0
Recall
1.0
Confusion?
Predicted +Predicted MaybePredicted -
+900
-00247
Precision?
1.0
Recall?
1.0
Freqs
test
numberfreq
0247
19
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
32.0ms512×0valid
Compiler

Compiled 61 to 28 computations (54.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 16.0ms
ival-mult: 10.0ms (61.1% of total)
ival-sub: 3.0ms (18.3% of total)
ival-add: 2.0ms (12.2% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

preprocess101.0ms (1.7%)

Memory
-26.5MiB live, 97.5MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
03290
18083
217881
348266
4108364
5186664
6229264
7235464
8236264
9236264
089
0129
1209
2279
3397
4507
5687
61117
71827
83707
95807
106707
116807
06807
Stop Event
iter limit
saturated
iter limit
saturated
Calls
Call 1
Inputs
(+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z))
Outputs
(+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z))
(fma.f64 (+.f64 z y) x (neg.f64 z))
Compiler

Compiled 9 to 8 computations (11.1% saved)

eval0.0ms (0%)

Memory
0.5MiB live, 0.5MiB allocated
Compiler

Compiled 0 to 3 computations (-∞% saved)

prune0.0ms (0%)

Memory
1.5MiB live, 1.5MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
96.5%
(+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z))
Compiler

Compiled 9 to 8 computations (11.1% saved)

simplify21.0ms (0.4%)

Memory
2.9MiB live, 41.9MiB allocated
Algorithm
egg-herbie
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
cost-diff0
(-.f64 x #s(literal 1 binary64))
cost-diff0
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
cost-diff0
(*.f64 x y)
cost-diff320
(+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z))
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0824
01224
12024
22724
33922
45022
56822
611122
718222
837022
958022
1067022
1168022
068022
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z))
(*.f64 x y)
x
y
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(-.f64 x #s(literal 1 binary64))
#s(literal 1 binary64)
z
Outputs
(+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(*.f64 x y)
(*.f64 y x)
x
y
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(-.f64 x #s(literal 1 binary64))
#s(literal 1 binary64)
z

localize32.0ms (0.6%)

Memory
15.8MiB live, 97.3MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0
(-.f64 x #s(literal 1 binary64))
accuracy0
(*.f64 x y)
accuracy0.0078125
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
accuracy1.9999917433208234
(+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z))
Samples
27.0ms256×0valid
Compiler

Compiled 26 to 10 computations (61.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 8.0ms
ival-mult: 6.0ms (71.6% of total)
ival-sub: 1.0ms (11.9% of total)
ival-add: 1.0ms (11.9% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series11.0ms (0.2%)

Memory
-34.7MiB live, 43.6MiB allocated
Counts
4 → 96
Calls
Call 1
Inputs
#s(alt (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())
#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())
#s(alt (*.f64 (-.f64 x #s(literal 1 binary64)) z) (patch (*.f64 (-.f64 x #s(literal 1 binary64)) z) #<representation binary64>) () ())
#s(alt (-.f64 x #s(literal 1 binary64)) (patch (-.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())
Outputs
#s(alt (* x y) (taylor 0 z) (#s(alt (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 z) (#s(alt (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 z) (#s(alt (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 z) (#s(alt (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor 0 z) (#s(alt (*.f64 (-.f64 x #s(literal 1 binary64)) z) (patch (*.f64 (-.f64 x #s(literal 1 binary64)) z) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor 0 z) (#s(alt (*.f64 (-.f64 x #s(literal 1 binary64)) z) (patch (*.f64 (-.f64 x #s(literal 1 binary64)) z) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor 0 z) (#s(alt (*.f64 (-.f64 x #s(literal 1 binary64)) z) (patch (*.f64 (-.f64 x #s(literal 1 binary64)) z) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor 0 z) (#s(alt (*.f64 (-.f64 x #s(literal 1 binary64)) z) (patch (*.f64 (-.f64 x #s(literal 1 binary64)) z) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor inf z) (#s(alt (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (* z (- (+ x (/ (* x y) z)) 1)) (taylor inf z) (#s(alt (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (* z (- (+ x (/ (* x y) z)) 1)) (taylor inf z) (#s(alt (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (* z (- (+ x (/ (* x y) z)) 1)) (taylor inf z) (#s(alt (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor inf z) (#s(alt (*.f64 (-.f64 x #s(literal 1 binary64)) z) (patch (*.f64 (-.f64 x #s(literal 1 binary64)) z) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor inf z) (#s(alt (*.f64 (-.f64 x #s(literal 1 binary64)) z) (patch (*.f64 (-.f64 x #s(literal 1 binary64)) z) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor inf z) (#s(alt (*.f64 (-.f64 x #s(literal 1 binary64)) z) (patch (*.f64 (-.f64 x #s(literal 1 binary64)) z) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor inf z) (#s(alt (*.f64 (-.f64 x #s(literal 1 binary64)) z) (patch (*.f64 (-.f64 x #s(literal 1 binary64)) z) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor -inf z) (#s(alt (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z))))) (taylor -inf z) (#s(alt (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z))))) (taylor -inf z) (#s(alt (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z))))) (taylor -inf z) (#s(alt (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor -inf z) (#s(alt (*.f64 (-.f64 x #s(literal 1 binary64)) z) (patch (*.f64 (-.f64 x #s(literal 1 binary64)) z) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor -inf z) (#s(alt (*.f64 (-.f64 x #s(literal 1 binary64)) z) (patch (*.f64 (-.f64 x #s(literal 1 binary64)) z) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor -inf z) (#s(alt (*.f64 (-.f64 x #s(literal 1 binary64)) z) (patch (*.f64 (-.f64 x #s(literal 1 binary64)) z) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor -inf z) (#s(alt (*.f64 (-.f64 x #s(literal 1 binary64)) z) (patch (*.f64 (-.f64 x #s(literal 1 binary64)) z) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor 0 y) (#s(alt (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 y) (#s(alt (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 y) (#s(alt (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 y) (#s(alt (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<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 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (/ (* z (- x 1)) y))) (taylor inf y) (#s(alt (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (/ (* z (- x 1)) y))) (taylor inf y) (#s(alt (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (/ (* z (- x 1)) y))) (taylor inf y) (#s(alt (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<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 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y))))) (taylor -inf y) (#s(alt (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y))))) (taylor -inf y) (#s(alt (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y))))) (taylor -inf y) (#s(alt (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<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 (* -1 z) (taylor 0 x) (#s(alt (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 z) (* x (+ y z))) (taylor 0 x) (#s(alt (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 z) (* x (+ y z))) (taylor 0 x) (#s(alt (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 z) (* x (+ y z))) (taylor 0 x) (#s(alt (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<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 (* -1 z) (taylor 0 x) (#s(alt (*.f64 (-.f64 x #s(literal 1 binary64)) z) (patch (*.f64 (-.f64 x #s(literal 1 binary64)) z) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 z) (* x z)) (taylor 0 x) (#s(alt (*.f64 (-.f64 x #s(literal 1 binary64)) z) (patch (*.f64 (-.f64 x #s(literal 1 binary64)) z) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 z) (* x z)) (taylor 0 x) (#s(alt (*.f64 (-.f64 x #s(literal 1 binary64)) z) (patch (*.f64 (-.f64 x #s(literal 1 binary64)) z) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 z) (* x z)) (taylor 0 x) (#s(alt (*.f64 (-.f64 x #s(literal 1 binary64)) z) (patch (*.f64 (-.f64 x #s(literal 1 binary64)) z) #<representation binary64>) () ())) ())
#s(alt -1 (taylor 0 x) (#s(alt (-.f64 x #s(literal 1 binary64)) (patch (-.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (- x 1) (taylor 0 x) (#s(alt (-.f64 x #s(literal 1 binary64)) (patch (-.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (- x 1) (taylor 0 x) (#s(alt (-.f64 x #s(literal 1 binary64)) (patch (-.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (- x 1) (taylor 0 x) (#s(alt (-.f64 x #s(literal 1 binary64)) (patch (-.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (+ y z)) (taylor inf x) (#s(alt (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (+ z (* -1 (/ z x))))) (taylor inf x) (#s(alt (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (+ z (* -1 (/ z x))))) (taylor inf x) (#s(alt (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (+ z (* -1 (/ z x))))) (taylor inf x) (#s(alt (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<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 z) (taylor inf x) (#s(alt (*.f64 (-.f64 x #s(literal 1 binary64)) z) (patch (*.f64 (-.f64 x #s(literal 1 binary64)) z) #<representation binary64>) () ())) ())
#s(alt (* x (+ z (* -1 (/ z x)))) (taylor inf x) (#s(alt (*.f64 (-.f64 x #s(literal 1 binary64)) z) (patch (*.f64 (-.f64 x #s(literal 1 binary64)) z) #<representation binary64>) () ())) ())
#s(alt (* x (+ z (* -1 (/ z x)))) (taylor inf x) (#s(alt (*.f64 (-.f64 x #s(literal 1 binary64)) z) (patch (*.f64 (-.f64 x #s(literal 1 binary64)) z) #<representation binary64>) () ())) ())
#s(alt (* x (+ z (* -1 (/ z x)))) (taylor inf x) (#s(alt (*.f64 (-.f64 x #s(literal 1 binary64)) z) (patch (*.f64 (-.f64 x #s(literal 1 binary64)) z) #<representation binary64>) () ())) ())
#s(alt x (taylor inf x) (#s(alt (-.f64 x #s(literal 1 binary64)) (patch (-.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (- 1 (/ 1 x))) (taylor inf x) (#s(alt (-.f64 x #s(literal 1 binary64)) (patch (-.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (- 1 (/ 1 x))) (taylor inf x) (#s(alt (-.f64 x #s(literal 1 binary64)) (patch (-.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (- 1 (/ 1 x))) (taylor inf x) (#s(alt (-.f64 x #s(literal 1 binary64)) (patch (-.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (* -1 z)))) (taylor -inf x) (#s(alt (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x))))) (taylor -inf x) (#s(alt (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x))))) (taylor -inf x) (#s(alt (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x))))) (taylor -inf x) (#s(alt (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch (+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<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 z) (taylor -inf x) (#s(alt (*.f64 (-.f64 x #s(literal 1 binary64)) z) (patch (*.f64 (-.f64 x #s(literal 1 binary64)) z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 z) (/ z x)))) (taylor -inf x) (#s(alt (*.f64 (-.f64 x #s(literal 1 binary64)) z) (patch (*.f64 (-.f64 x #s(literal 1 binary64)) z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 z) (/ z x)))) (taylor -inf x) (#s(alt (*.f64 (-.f64 x #s(literal 1 binary64)) z) (patch (*.f64 (-.f64 x #s(literal 1 binary64)) z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 z) (/ z x)))) (taylor -inf x) (#s(alt (*.f64 (-.f64 x #s(literal 1 binary64)) z) (patch (*.f64 (-.f64 x #s(literal 1 binary64)) z) #<representation binary64>) () ())) ())
#s(alt x (taylor -inf x) (#s(alt (-.f64 x #s(literal 1 binary64)) (patch (-.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (/ 1 x) 1))) (taylor -inf x) (#s(alt (-.f64 x #s(literal 1 binary64)) (patch (-.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (/ 1 x) 1))) (taylor -inf x) (#s(alt (-.f64 x #s(literal 1 binary64)) (patch (-.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (/ 1 x) 1))) (taylor -inf x) (#s(alt (-.f64 x #s(literal 1 binary64)) (patch (-.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
Calls

9 calls:

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

simplify139.0ms (2.4%)

Memory
37.1MiB live, 188.4MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
054494
1180440
2532440
31339440
44403440
08080440
Stop Event
iter limit
node limit
Counts
96 → 94
Calls
Call 1
Inputs
(* x y)
(+ (* x y) (* z (- x 1)))
(+ (* x y) (* z (- x 1)))
(+ (* x y) (* z (- x 1)))
(* z (- x 1))
(* z (- x 1))
(* z (- x 1))
(* z (- x 1))
(* z (- x 1))
(* z (- (+ x (/ (* x y) z)) 1))
(* z (- (+ x (/ (* x y) z)) 1))
(* z (- (+ x (/ (* x y) z)) 1))
(* z (- x 1))
(* z (- x 1))
(* z (- x 1))
(* z (- x 1))
(* z (- x 1))
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(* z (- x 1))
(* z (- x 1))
(* z (- x 1))
(* z (- x 1))
(* z (- x 1))
(+ (* x y) (* z (- x 1)))
(+ (* x y) (* z (- x 1)))
(+ (* x y) (* z (- x 1)))
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* y (+ x (/ (* z (- x 1)) y)))
(* y (+ x (/ (* z (- x 1)) y)))
(* y (+ x (/ (* z (- x 1)) y)))
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(* x y)
(* x y)
(* x y)
(* x y)
(* -1 z)
(+ (* -1 z) (* x (+ y z)))
(+ (* -1 z) (* x (+ y z)))
(+ (* -1 z) (* x (+ y z)))
(* x y)
(* x y)
(* x y)
(* x y)
(* -1 z)
(+ (* -1 z) (* x z))
(+ (* -1 z) (* x z))
(+ (* -1 z) (* x z))
-1
(- x 1)
(- x 1)
(- x 1)
(* x (+ y z))
(* x (+ y (+ z (* -1 (/ z x)))))
(* x (+ y (+ z (* -1 (/ z x)))))
(* x (+ y (+ z (* -1 (/ z x)))))
(* x y)
(* x y)
(* x y)
(* x y)
(* x z)
(* x (+ z (* -1 (/ z x))))
(* x (+ z (* -1 (/ z x))))
(* x (+ z (* -1 (/ z x))))
x
(* x (- 1 (/ 1 x)))
(* x (- 1 (/ 1 x)))
(* x (- 1 (/ 1 x)))
(* -1 (* x (+ (* -1 y) (* -1 z))))
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(* x y)
(* x y)
(* x y)
(* x y)
(* x z)
(* -1 (* x (+ (* -1 z) (/ z x))))
(* -1 (* x (+ (* -1 z) (/ z x))))
(* -1 (* x (+ (* -1 z) (/ z x))))
x
(* -1 (* x (- (/ 1 x) 1)))
(* -1 (* x (- (/ 1 x) 1)))
(* -1 (* x (- (/ 1 x) 1)))
Outputs
(* x y)
(*.f64 y x)
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- (+ x (/ (* x y) z)) 1))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* z (- (+ x (/ (* x y) z)) 1))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* z (- (+ x (/ (* x y) z)) 1))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* 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 (- x 1)) y)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* y (+ x (/ (* z (- x 1)) y)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* y (+ x (/ (* z (- x 1)) y)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* 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 (- x 1)) y)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* -1 z)
(neg.f64 z)
(+ (* -1 z) (* x (+ y z)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* -1 z) (* x (+ y z)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* -1 z) (* x (+ y z)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* -1 z)
(neg.f64 z)
(+ (* -1 z) (* x z))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(+ (* -1 z) (* x z))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(+ (* -1 z) (* x z))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
-1
#s(literal -1 binary64)
(- x 1)
(-.f64 x #s(literal 1 binary64))
(- x 1)
(-.f64 x #s(literal 1 binary64))
(- x 1)
(-.f64 x #s(literal 1 binary64))
(* x (+ y z))
(*.f64 (+.f64 z y) x)
(* x (+ y (+ z (* -1 (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x (+ y (+ z (* -1 (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x (+ y (+ z (* -1 (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x z)
(*.f64 z x)
(* x (+ z (* -1 (/ z x))))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* x (+ z (* -1 (/ z x))))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* x (+ z (* -1 (/ z x))))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
x
(* x (- 1 (/ 1 x)))
(-.f64 x #s(literal 1 binary64))
(* x (- 1 (/ 1 x)))
(-.f64 x #s(literal 1 binary64))
(* x (- 1 (/ 1 x)))
(-.f64 x #s(literal 1 binary64))
(* -1 (* x (+ (* -1 y) (* -1 z))))
(*.f64 (+.f64 z y) x)
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x z)
(*.f64 z x)
(* -1 (* x (+ (* -1 z) (/ z x))))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* -1 (* x (+ (* -1 z) (/ z x))))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* -1 (* x (+ (* -1 z) (/ z x))))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
x
(* -1 (* x (- (/ 1 x) 1)))
(-.f64 x #s(literal 1 binary64))
(* -1 (* x (- (/ 1 x) 1)))
(-.f64 x #s(literal 1 binary64))
(* -1 (* x (- (/ 1 x) 1)))
(-.f64 x #s(literal 1 binary64))

rewrite440.0ms (7.6%)

Memory
-245.5MiB live, 301.2MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0820
01220
14520
231120
3385420
01040919
Stop Event
iter limit
node limit
iter limit
Counts
4 → 280
Calls
Call 1
Inputs
(+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z))
(*.f64 x y)
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(-.f64 x #s(literal 1 binary64))
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>

eval48.0ms (0.8%)

Memory
12.2MiB live, 135.2MiB allocated
Compiler

Compiled 7 790 to 1 014 computations (87% saved)

prune10.0ms (0.2%)

Memory
-1.2MiB live, 36.2MiB allocated
Pruning

6 alts after pruning (6 fresh and 0 done)

PrunedKeptTotal
New3686374
Fresh000
Picked101
Done000
Total3696375
Accuracy
100.0%
Counts
375 → 6
Alt Table
Click to see full alt table
StatusAccuracyProgram
81.7%
(+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z)))
100.0%
#s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z)))
58.0%
#s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z))
62.1%
#s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x))
44.3%
#s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x))
39.3%
#s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z))
Compiler

Compiled 68 to 74 computations (-8.8% saved)

simplify24.0ms (0.4%)

Memory
-0.3MiB live, 37.0MiB allocated
Algorithm
egg-herbie
Localize:

Found 14 expressions of interest:

NewMetricScoreProgram
cost-diff0
(-.f64 x #s(literal 1 binary64))
cost-diff0
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
cost-diff0
#s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z))
cost-diff0
(+.f64 z y)
cost-diff0
(*.f64 (+.f64 z y) x)
cost-diff0
#s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x))
cost-diff0
(*.f64 y x)
cost-diff0
#s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x))
cost-diff0
(neg.f64 z)
cost-diff0
#s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z))
cost-diff0
(neg.f64 z)
cost-diff0
(+.f64 z y)
cost-diff0
(fma.f64 (+.f64 z y) x (neg.f64 z))
cost-diff0
#s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z)))
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
020117
027117
141117
257107
3106107
4176107
5309107
6621107
7805107
8857107
9861107
0861107
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
#s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+.f64 z y)
z
y
x
(neg.f64 z)
#s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z))
(neg.f64 z)
z
#s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x))
(*.f64 y x)
y
x
#s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x))
(*.f64 (+.f64 z y) x)
(+.f64 z y)
z
y
x
#s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(-.f64 x #s(literal 1 binary64))
x
#s(literal 1 binary64)
z
Outputs
#s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+.f64 z y)
z
y
x
(neg.f64 z)
#s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z))
(neg.f64 z)
z
#s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x))
(*.f64 y x)
y
x
#s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x))
(*.f64 (+.f64 z y) x)
(+.f64 z y)
z
y
x
#s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(-.f64 x #s(literal 1 binary64))
x
#s(literal 1 binary64)
z

localize49.0ms (0.8%)

Memory
-2.3MiB live, 80.4MiB allocated
Localize:

Found 14 expressions of interest:

NewMetricScoreProgram
accuracy0
(-.f64 x #s(literal 1 binary64))
accuracy0.0078125
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
accuracy26.85494243011961
#s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z))
accuracy0
(+.f64 z y)
accuracy0.00390625
(*.f64 (+.f64 z y) x)
accuracy24.224873739581252
#s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x))
accuracy0
(*.f64 y x)
accuracy35.652088027164915
#s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x))
accuracy0
(neg.f64 z)
accuracy38.82812423116254
#s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z))
accuracy0
(fma.f64 (+.f64 z y) x (neg.f64 z))
accuracy0
(+.f64 z y)
accuracy0
(neg.f64 z)
accuracy0
#s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z)))
Samples
39.0ms256×0valid
Compiler

Compiled 93 to 15 computations (83.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 21.0ms
ival-add: 12.0ms (57.2% of total)
ival-mult: 7.0ms (33.4% of total)
ival-sub: 1.0ms (4.8% of total)
ival-neg: 1.0ms (4.8% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series29.0ms (0.5%)

Memory
3.6MiB live, 41.4MiB allocated
Counts
12 → 348
Calls
Call 1
Inputs
#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) (patch #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) #<representation binary64>) () ())
#s(alt (fma.f64 (+.f64 z y) x (neg.f64 z)) (patch (fma.f64 (+.f64 z y) x (neg.f64 z)) #<representation binary64>) () ())
#s(alt (+.f64 z y) (patch (+.f64 z y) #<representation binary64>) () ())
#s(alt (neg.f64 z) (patch (neg.f64 z) #<representation binary64>) () ())
#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) #<representation binary64>) () ())
#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) #<representation binary64>) () ())
#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())
#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) #<representation binary64>) () ())
#s(alt (*.f64 (+.f64 z y) x) (patch (*.f64 (+.f64 z y) x) #<representation binary64>) () ())
#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())
#s(alt (*.f64 (-.f64 x #s(literal 1 binary64)) z) (patch (*.f64 (-.f64 x #s(literal 1 binary64)) z) #<representation binary64>) () ())
#s(alt (-.f64 x #s(literal 1 binary64)) (patch (-.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())
Outputs
#s(alt (* x y) (taylor 0 z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) (patch #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) (patch #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) (patch #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) (patch #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 z) (#s(alt (fma.f64 (+.f64 z y) x (neg.f64 z)) (patch (fma.f64 (+.f64 z y) x (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 z) (#s(alt (fma.f64 (+.f64 z y) x (neg.f64 z)) (patch (fma.f64 (+.f64 z y) x (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 z) (#s(alt (fma.f64 (+.f64 z y) x (neg.f64 z)) (patch (fma.f64 (+.f64 z y) x (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 z) (#s(alt (fma.f64 (+.f64 z y) x (neg.f64 z)) (patch (fma.f64 (+.f64 z y) x (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt y (taylor 0 z) (#s(alt (+.f64 z y) (patch (+.f64 z y) #<representation binary64>) () ())) ())
#s(alt (+ y z) (taylor 0 z) (#s(alt (+.f64 z y) (patch (+.f64 z y) #<representation binary64>) () ())) ())
#s(alt (+ y z) (taylor 0 z) (#s(alt (+.f64 z y) (patch (+.f64 z y) #<representation binary64>) () ())) ())
#s(alt (+ y z) (taylor 0 z) (#s(alt (+.f64 z y) (patch (+.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) (* (- x 1) z)) (neg.f64 z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 z) (#s(alt (*.f64 (+.f64 z y) x) (patch (*.f64 (+.f64 z y) x) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* x z)) (taylor 0 z) (#s(alt (*.f64 (+.f64 z y) x) (patch (*.f64 (+.f64 z y) x) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* x z)) (taylor 0 z) (#s(alt (*.f64 (+.f64 z y) x) (patch (*.f64 (+.f64 z y) x) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* x z)) (taylor 0 z) (#s(alt (*.f64 (+.f64 z y) x) (patch (*.f64 (+.f64 z y) x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor 0 z) (#s(alt (*.f64 (-.f64 x #s(literal 1 binary64)) z) (patch (*.f64 (-.f64 x #s(literal 1 binary64)) z) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor 0 z) (#s(alt (*.f64 (-.f64 x #s(literal 1 binary64)) z) (patch (*.f64 (-.f64 x #s(literal 1 binary64)) z) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor 0 z) (#s(alt (*.f64 (-.f64 x #s(literal 1 binary64)) z) (patch (*.f64 (-.f64 x #s(literal 1 binary64)) z) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor 0 z) (#s(alt (*.f64 (-.f64 x #s(literal 1 binary64)) z) (patch (*.f64 (-.f64 x #s(literal 1 binary64)) z) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) (patch #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* z (- (+ x (/ (* x y) z)) 1)) (taylor inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) (patch #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* z (- (+ x (/ (* x y) z)) 1)) (taylor inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) (patch #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* z (- (+ x (/ (* x y) z)) 1)) (taylor inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) (patch #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor inf z) (#s(alt (fma.f64 (+.f64 z y) x (neg.f64 z)) (patch (fma.f64 (+.f64 z y) x (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* z (- (+ x (/ (* x y) z)) 1)) (taylor inf z) (#s(alt (fma.f64 (+.f64 z y) x (neg.f64 z)) (patch (fma.f64 (+.f64 z y) x (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* z (- (+ x (/ (* x y) z)) 1)) (taylor inf z) (#s(alt (fma.f64 (+.f64 z y) x (neg.f64 z)) (patch (fma.f64 (+.f64 z y) x (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* z (- (+ x (/ (* x y) z)) 1)) (taylor inf z) (#s(alt (fma.f64 (+.f64 z y) x (neg.f64 z)) (patch (fma.f64 (+.f64 z y) x (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt z (taylor inf z) (#s(alt (+.f64 z y) (patch (+.f64 z y) #<representation binary64>) () ())) ())
#s(alt (* z (+ 1 (/ y z))) (taylor inf z) (#s(alt (+.f64 z y) (patch (+.f64 z y) #<representation binary64>) () ())) ())
#s(alt (* z (+ 1 (/ y z))) (taylor inf z) (#s(alt (+.f64 z y) (patch (+.f64 z y) #<representation binary64>) () ())) ())
#s(alt (* z (+ 1 (/ y z))) (taylor inf z) (#s(alt (+.f64 z y) (patch (+.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 (* z (- x 1)) (taylor inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* z (- (+ x (/ (* x y) z)) 1)) (taylor inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* z (- (+ x (/ (* x y) z)) 1)) (taylor inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* z (- (+ x (/ (* x y) z)) 1)) (taylor inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* z (- (+ x (/ (* x y) z)) 1)) (taylor inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* z (- (+ x (/ (* x y) z)) 1)) (taylor inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* z (- (+ x (/ (* x y) z)) 1)) (taylor inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) #<representation binary64>) () ())) ())
#s(alt (* z (- (+ x (/ (* x y) z)) 1)) (taylor inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) #<representation binary64>) () ())) ())
#s(alt (* z (- (+ x (/ (* x y) z)) 1)) (taylor inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) #<representation binary64>) () ())) ())
#s(alt (* z (- (+ x (/ (* x y) z)) 1)) (taylor inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) #<representation binary64>) () ())) ())
#s(alt (* x z) (taylor inf z) (#s(alt (*.f64 (+.f64 z y) x) (patch (*.f64 (+.f64 z y) x) #<representation binary64>) () ())) ())
#s(alt (* z (+ x (/ (* x y) z))) (taylor inf z) (#s(alt (*.f64 (+.f64 z y) x) (patch (*.f64 (+.f64 z y) x) #<representation binary64>) () ())) ())
#s(alt (* z (+ x (/ (* x y) z))) (taylor inf z) (#s(alt (*.f64 (+.f64 z y) x) (patch (*.f64 (+.f64 z y) x) #<representation binary64>) () ())) ())
#s(alt (* z (+ x (/ (* x y) z))) (taylor inf z) (#s(alt (*.f64 (+.f64 z y) x) (patch (*.f64 (+.f64 z y) x) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (* z (- (+ x (/ (* x y) z)) 1)) (taylor inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (* z (- (+ x (/ (* x y) z)) 1)) (taylor inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (* z (- (+ x (/ (* x y) z)) 1)) (taylor inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor inf z) (#s(alt (*.f64 (-.f64 x #s(literal 1 binary64)) z) (patch (*.f64 (-.f64 x #s(literal 1 binary64)) z) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor inf z) (#s(alt (*.f64 (-.f64 x #s(literal 1 binary64)) z) (patch (*.f64 (-.f64 x #s(literal 1 binary64)) z) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor inf z) (#s(alt (*.f64 (-.f64 x #s(literal 1 binary64)) z) (patch (*.f64 (-.f64 x #s(literal 1 binary64)) z) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor inf z) (#s(alt (*.f64 (-.f64 x #s(literal 1 binary64)) z) (patch (*.f64 (-.f64 x #s(literal 1 binary64)) z) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor -inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) (patch #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z))))) (taylor -inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) (patch #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z))))) (taylor -inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) (patch #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z))))) (taylor -inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) (patch #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (+ 1 (* -1 x)))) (taylor -inf z) (#s(alt (fma.f64 (+.f64 z y) x (neg.f64 z)) (patch (fma.f64 (+.f64 z y) x (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (+ 1 (+ (* -1 x) (* -1 (/ (* x y) z)))))) (taylor -inf z) (#s(alt (fma.f64 (+.f64 z y) x (neg.f64 z)) (patch (fma.f64 (+.f64 z y) x (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (+ 1 (+ (* -1 x) (* -1 (/ (* x y) z)))))) (taylor -inf z) (#s(alt (fma.f64 (+.f64 z y) x (neg.f64 z)) (patch (fma.f64 (+.f64 z y) x (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (+ 1 (+ (* -1 x) (* -1 (/ (* x y) z)))))) (taylor -inf z) (#s(alt (fma.f64 (+.f64 z y) x (neg.f64 z)) (patch (fma.f64 (+.f64 z y) x (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt z (taylor -inf z) (#s(alt (+.f64 z y) (patch (+.f64 z y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (- (* -1 (/ y z)) 1))) (taylor -inf z) (#s(alt (+.f64 z y) (patch (+.f64 z y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (- (* -1 (/ y z)) 1))) (taylor -inf z) (#s(alt (+.f64 z y) (patch (+.f64 z y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (- (* -1 (/ y z)) 1))) (taylor -inf z) (#s(alt (+.f64 z y) (patch (+.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 (* z (- x 1)) (taylor -inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z))))) (taylor -inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z))))) (taylor -inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z))))) (taylor -inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor -inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z))))) (taylor -inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z))))) (taylor -inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z))))) (taylor -inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor -inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z))))) (taylor -inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z))))) (taylor -inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z))))) (taylor -inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) #<representation binary64>) () ())) ())
#s(alt (* x z) (taylor -inf z) (#s(alt (*.f64 (+.f64 z y) x) (patch (*.f64 (+.f64 z y) x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (+ (* -1 x) (* -1 (/ (* x y) z))))) (taylor -inf z) (#s(alt (*.f64 (+.f64 z y) x) (patch (*.f64 (+.f64 z y) x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (+ (* -1 x) (* -1 (/ (* x y) z))))) (taylor -inf z) (#s(alt (*.f64 (+.f64 z y) x) (patch (*.f64 (+.f64 z y) x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (+ (* -1 x) (* -1 (/ (* x y) z))))) (taylor -inf z) (#s(alt (*.f64 (+.f64 z y) x) (patch (*.f64 (+.f64 z y) x) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor -inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z))))) (taylor -inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z))))) (taylor -inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z))))) (taylor -inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor -inf z) (#s(alt (*.f64 (-.f64 x #s(literal 1 binary64)) z) (patch (*.f64 (-.f64 x #s(literal 1 binary64)) z) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor -inf z) (#s(alt (*.f64 (-.f64 x #s(literal 1 binary64)) z) (patch (*.f64 (-.f64 x #s(literal 1 binary64)) z) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor -inf z) (#s(alt (*.f64 (-.f64 x #s(literal 1 binary64)) z) (patch (*.f64 (-.f64 x #s(literal 1 binary64)) z) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor -inf z) (#s(alt (*.f64 (-.f64 x #s(literal 1 binary64)) z) (patch (*.f64 (-.f64 x #s(literal 1 binary64)) z) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor 0 y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) (patch #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) (patch #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) (patch #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) (patch #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (- (* x z) z) (taylor 0 y) (#s(alt (fma.f64 (+.f64 z y) x (neg.f64 z)) (patch (fma.f64 (+.f64 z y) x (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (- (+ (* x y) (* x z)) z) (taylor 0 y) (#s(alt (fma.f64 (+.f64 z y) x (neg.f64 z)) (patch (fma.f64 (+.f64 z y) x (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (- (+ (* x y) (* x z)) z) (taylor 0 y) (#s(alt (fma.f64 (+.f64 z y) x (neg.f64 z)) (patch (fma.f64 (+.f64 z y) x (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (- (+ (* x y) (* x z)) z) (taylor 0 y) (#s(alt (fma.f64 (+.f64 z y) x (neg.f64 z)) (patch (fma.f64 (+.f64 z y) x (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt z (taylor 0 y) (#s(alt (+.f64 z y) (patch (+.f64 z y) #<representation binary64>) () ())) ())
#s(alt (+ y z) (taylor 0 y) (#s(alt (+.f64 z y) (patch (+.f64 z y) #<representation binary64>) () ())) ())
#s(alt (+ y z) (taylor 0 y) (#s(alt (+.f64 z y) (patch (+.f64 z y) #<representation binary64>) () ())) ())
#s(alt (+ y z) (taylor 0 y) (#s(alt (+.f64 z y) (patch (+.f64 z y) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor 0 y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor 0 y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) (patch #s(approx (+ (* x y) (* (- x 1) 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 (* z (- x 1)) (taylor 0 y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) #<representation binary64>) () ())) ())
#s(alt (* x z) (taylor 0 y) (#s(alt (*.f64 (+.f64 z y) x) (patch (*.f64 (+.f64 z y) x) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* x z)) (taylor 0 y) (#s(alt (*.f64 (+.f64 z y) x) (patch (*.f64 (+.f64 z y) x) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* x z)) (taylor 0 y) (#s(alt (*.f64 (+.f64 z y) x) (patch (*.f64 (+.f64 z y) x) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* x z)) (taylor 0 y) (#s(alt (*.f64 (+.f64 z y) x) (patch (*.f64 (+.f64 z y) x) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor 0 y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) (patch #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (/ (* z (- x 1)) y))) (taylor inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) (patch #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (/ (* z (- x 1)) y))) (taylor inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) (patch #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (/ (* z (- x 1)) y))) (taylor inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) (patch #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf y) (#s(alt (fma.f64 (+.f64 z y) x (neg.f64 z)) (patch (fma.f64 (+.f64 z y) x (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* y (- (+ x (/ (* x z) y)) (/ z y))) (taylor inf y) (#s(alt (fma.f64 (+.f64 z y) x (neg.f64 z)) (patch (fma.f64 (+.f64 z y) x (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* y (- (+ x (/ (* x z) y)) (/ z y))) (taylor inf y) (#s(alt (fma.f64 (+.f64 z y) x (neg.f64 z)) (patch (fma.f64 (+.f64 z y) x (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* y (- (+ x (/ (* x z) y)) (/ z y))) (taylor inf y) (#s(alt (fma.f64 (+.f64 z y) x (neg.f64 z)) (patch (fma.f64 (+.f64 z y) x (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt y (taylor inf y) (#s(alt (+.f64 z y) (patch (+.f64 z y) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1 (/ z y))) (taylor inf y) (#s(alt (+.f64 z y) (patch (+.f64 z y) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1 (/ z y))) (taylor inf y) (#s(alt (+.f64 z y) (patch (+.f64 z y) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1 (/ z y))) (taylor inf y) (#s(alt (+.f64 z y) (patch (+.f64 z y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (/ (* z (- x 1)) y))) (taylor inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (/ (* z (- x 1)) y))) (taylor inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (/ (* z (- x 1)) y))) (taylor inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (/ (* z (- x 1)) y))) (taylor inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (/ (* z (- x 1)) y))) (taylor inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (/ (* z (- x 1)) y))) (taylor inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) (patch #s(approx (+ (* x y) (* (- x 1) 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 (* x y) (taylor inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (/ (* z (- x 1)) y))) (taylor inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (/ (* z (- x 1)) y))) (taylor inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (/ (* z (- x 1)) y))) (taylor inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf y) (#s(alt (*.f64 (+.f64 z y) x) (patch (*.f64 (+.f64 z y) x) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (/ (* x z) y))) (taylor inf y) (#s(alt (*.f64 (+.f64 z y) x) (patch (*.f64 (+.f64 z y) x) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (/ (* x z) y))) (taylor inf y) (#s(alt (*.f64 (+.f64 z y) x) (patch (*.f64 (+.f64 z y) x) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (/ (* x z) y))) (taylor inf y) (#s(alt (*.f64 (+.f64 z y) x) (patch (*.f64 (+.f64 z y) x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (/ (* z (- x 1)) y))) (taylor inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (/ (* z (- x 1)) y))) (taylor inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (/ (* z (- x 1)) y))) (taylor inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) (patch #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y))))) (taylor -inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) (patch #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y))))) (taylor -inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) (patch #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y))))) (taylor -inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) (patch #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf y) (#s(alt (fma.f64 (+.f64 z y) x (neg.f64 z)) (patch (fma.f64 (+.f64 z y) x (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (- (* x z) z) y))))) (taylor -inf y) (#s(alt (fma.f64 (+.f64 z y) x (neg.f64 z)) (patch (fma.f64 (+.f64 z y) x (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (- (* x z) z) y))))) (taylor -inf y) (#s(alt (fma.f64 (+.f64 z y) x (neg.f64 z)) (patch (fma.f64 (+.f64 z y) x (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (- (* x z) z) y))))) (taylor -inf y) (#s(alt (fma.f64 (+.f64 z y) x (neg.f64 z)) (patch (fma.f64 (+.f64 z y) x (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt y (taylor -inf y) (#s(alt (+.f64 z y) (patch (+.f64 z y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (* -1 (/ z y)) 1))) (taylor -inf y) (#s(alt (+.f64 z y) (patch (+.f64 z y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (* -1 (/ z y)) 1))) (taylor -inf y) (#s(alt (+.f64 z y) (patch (+.f64 z y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (* -1 (/ z y)) 1))) (taylor -inf y) (#s(alt (+.f64 z y) (patch (+.f64 z y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y))))) (taylor -inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y))))) (taylor -inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y))))) (taylor -inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y))))) (taylor -inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y))))) (taylor -inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y))))) (taylor -inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) (patch #s(approx (+ (* x y) (* (- x 1) 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 (* x y) (taylor -inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y))))) (taylor -inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y))))) (taylor -inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y))))) (taylor -inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf y) (#s(alt (*.f64 (+.f64 z y) x) (patch (*.f64 (+.f64 z y) x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (* x z) y))))) (taylor -inf y) (#s(alt (*.f64 (+.f64 z y) x) (patch (*.f64 (+.f64 z y) x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (* x z) y))))) (taylor -inf y) (#s(alt (*.f64 (+.f64 z y) x) (patch (*.f64 (+.f64 z y) x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (* x z) y))))) (taylor -inf y) (#s(alt (*.f64 (+.f64 z y) x) (patch (*.f64 (+.f64 z y) x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y))))) (taylor -inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y))))) (taylor -inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y))))) (taylor -inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (* -1 z) (taylor 0 x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) (patch #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 z) (* x (+ y z))) (taylor 0 x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) (patch #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 z) (* x (+ y z))) (taylor 0 x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) (patch #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 z) (* x (+ y z))) (taylor 0 x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) (patch #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* -1 z) (taylor 0 x) (#s(alt (fma.f64 (+.f64 z y) x (neg.f64 z)) (patch (fma.f64 (+.f64 z y) x (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (- (* x (+ y z)) z) (taylor 0 x) (#s(alt (fma.f64 (+.f64 z y) x (neg.f64 z)) (patch (fma.f64 (+.f64 z y) x (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (- (* x (+ y z)) z) (taylor 0 x) (#s(alt (fma.f64 (+.f64 z y) x (neg.f64 z)) (patch (fma.f64 (+.f64 z y) x (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (- (* x (+ y z)) z) (taylor 0 x) (#s(alt (fma.f64 (+.f64 z y) x (neg.f64 z)) (patch (fma.f64 (+.f64 z y) x (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* -1 z) (taylor 0 x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 z) (* x (+ y z))) (taylor 0 x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 z) (* x (+ y z))) (taylor 0 x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 z) (* x (+ y z))) (taylor 0 x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* -1 z) (taylor 0 x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 z) (* x (+ y z))) (taylor 0 x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 z) (* x (+ y z))) (taylor 0 x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 z) (* x (+ y z))) (taylor 0 x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) (patch #s(approx (+ (* x y) (* (- x 1) 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 z) (taylor 0 x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 z) (* x (+ y z))) (taylor 0 x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 z) (* x (+ y z))) (taylor 0 x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 z) (* x (+ y z))) (taylor 0 x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ y z)) (taylor 0 x) (#s(alt (*.f64 (+.f64 z y) x) (patch (*.f64 (+.f64 z y) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ y z)) (taylor 0 x) (#s(alt (*.f64 (+.f64 z y) x) (patch (*.f64 (+.f64 z y) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ y z)) (taylor 0 x) (#s(alt (*.f64 (+.f64 z y) x) (patch (*.f64 (+.f64 z y) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ y z)) (taylor 0 x) (#s(alt (*.f64 (+.f64 z y) x) (patch (*.f64 (+.f64 z y) x) #<representation binary64>) () ())) ())
#s(alt (* -1 z) (taylor 0 x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 z) (* x (+ y z))) (taylor 0 x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 z) (* x (+ y z))) (taylor 0 x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 z) (* x (+ y z))) (taylor 0 x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (* -1 z) (taylor 0 x) (#s(alt (*.f64 (-.f64 x #s(literal 1 binary64)) z) (patch (*.f64 (-.f64 x #s(literal 1 binary64)) z) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 z) (* x z)) (taylor 0 x) (#s(alt (*.f64 (-.f64 x #s(literal 1 binary64)) z) (patch (*.f64 (-.f64 x #s(literal 1 binary64)) z) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 z) (* x z)) (taylor 0 x) (#s(alt (*.f64 (-.f64 x #s(literal 1 binary64)) z) (patch (*.f64 (-.f64 x #s(literal 1 binary64)) z) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 z) (* x z)) (taylor 0 x) (#s(alt (*.f64 (-.f64 x #s(literal 1 binary64)) z) (patch (*.f64 (-.f64 x #s(literal 1 binary64)) z) #<representation binary64>) () ())) ())
#s(alt -1 (taylor 0 x) (#s(alt (-.f64 x #s(literal 1 binary64)) (patch (-.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (- x 1) (taylor 0 x) (#s(alt (-.f64 x #s(literal 1 binary64)) (patch (-.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (- x 1) (taylor 0 x) (#s(alt (-.f64 x #s(literal 1 binary64)) (patch (-.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (- x 1) (taylor 0 x) (#s(alt (-.f64 x #s(literal 1 binary64)) (patch (-.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (+ y z)) (taylor inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) (patch #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (+ z (* -1 (/ z x))))) (taylor inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) (patch #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (+ z (* -1 (/ z x))))) (taylor inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) (patch #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (+ z (* -1 (/ z x))))) (taylor inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) (patch #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* x (+ y z)) (taylor inf x) (#s(alt (fma.f64 (+.f64 z y) x (neg.f64 z)) (patch (fma.f64 (+.f64 z y) x (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (+ z (* -1 (/ z x))))) (taylor inf x) (#s(alt (fma.f64 (+.f64 z y) x (neg.f64 z)) (patch (fma.f64 (+.f64 z y) x (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (+ z (* -1 (/ z x))))) (taylor inf x) (#s(alt (fma.f64 (+.f64 z y) x (neg.f64 z)) (patch (fma.f64 (+.f64 z y) x (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (+ z (* -1 (/ z x))))) (taylor inf x) (#s(alt (fma.f64 (+.f64 z y) x (neg.f64 z)) (patch (fma.f64 (+.f64 z y) x (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* x (+ y z)) (taylor inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (+ z (* -1 (/ z x))))) (taylor inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (+ z (* -1 (/ z x))))) (taylor inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (+ z (* -1 (/ z x))))) (taylor inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* x (+ y z)) (taylor inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (+ z (* -1 (/ z x))))) (taylor inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (+ z (* -1 (/ z x))))) (taylor inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (+ z (* -1 (/ z x))))) (taylor inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) (patch #s(approx (+ (* x y) (* (- x 1) 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 z)) (taylor inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (+ z (* -1 (/ z x))))) (taylor inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (+ z (* -1 (/ z x))))) (taylor inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (+ z (* -1 (/ z x))))) (taylor inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ y z)) (taylor inf x) (#s(alt (*.f64 (+.f64 z y) x) (patch (*.f64 (+.f64 z y) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ y z)) (taylor inf x) (#s(alt (*.f64 (+.f64 z y) x) (patch (*.f64 (+.f64 z y) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ y z)) (taylor inf x) (#s(alt (*.f64 (+.f64 z y) x) (patch (*.f64 (+.f64 z y) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ y z)) (taylor inf x) (#s(alt (*.f64 (+.f64 z y) x) (patch (*.f64 (+.f64 z y) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ y z)) (taylor inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (+ z (* -1 (/ z x))))) (taylor inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (+ z (* -1 (/ z x))))) (taylor inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (+ z (* -1 (/ z x))))) (taylor inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (* x z) (taylor inf x) (#s(alt (*.f64 (-.f64 x #s(literal 1 binary64)) z) (patch (*.f64 (-.f64 x #s(literal 1 binary64)) z) #<representation binary64>) () ())) ())
#s(alt (* x (+ z (* -1 (/ z x)))) (taylor inf x) (#s(alt (*.f64 (-.f64 x #s(literal 1 binary64)) z) (patch (*.f64 (-.f64 x #s(literal 1 binary64)) z) #<representation binary64>) () ())) ())
#s(alt (* x (+ z (* -1 (/ z x)))) (taylor inf x) (#s(alt (*.f64 (-.f64 x #s(literal 1 binary64)) z) (patch (*.f64 (-.f64 x #s(literal 1 binary64)) z) #<representation binary64>) () ())) ())
#s(alt (* x (+ z (* -1 (/ z x)))) (taylor inf x) (#s(alt (*.f64 (-.f64 x #s(literal 1 binary64)) z) (patch (*.f64 (-.f64 x #s(literal 1 binary64)) z) #<representation binary64>) () ())) ())
#s(alt x (taylor inf x) (#s(alt (-.f64 x #s(literal 1 binary64)) (patch (-.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (- 1 (/ 1 x))) (taylor inf x) (#s(alt (-.f64 x #s(literal 1 binary64)) (patch (-.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (- 1 (/ 1 x))) (taylor inf x) (#s(alt (-.f64 x #s(literal 1 binary64)) (patch (-.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (- 1 (/ 1 x))) (taylor inf x) (#s(alt (-.f64 x #s(literal 1 binary64)) (patch (-.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (* -1 z)))) (taylor -inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) (patch #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x))))) (taylor -inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) (patch #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x))))) (taylor -inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) (patch #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x))))) (taylor -inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) (patch #s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* x (+ y z)) (taylor -inf x) (#s(alt (fma.f64 (+.f64 z y) x (neg.f64 z)) (patch (fma.f64 (+.f64 z y) x (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 (+ y z)) (/ z x)))) (taylor -inf x) (#s(alt (fma.f64 (+.f64 z y) x (neg.f64 z)) (patch (fma.f64 (+.f64 z y) x (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 (+ y z)) (/ z x)))) (taylor -inf x) (#s(alt (fma.f64 (+.f64 z y) x (neg.f64 z)) (patch (fma.f64 (+.f64 z y) x (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 (+ y z)) (/ z x)))) (taylor -inf x) (#s(alt (fma.f64 (+.f64 z y) x (neg.f64 z)) (patch (fma.f64 (+.f64 z y) x (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (* -1 z)))) (taylor -inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x))))) (taylor -inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x))))) (taylor -inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x))))) (taylor -inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (* -1 z)))) (taylor -inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x))))) (taylor -inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x))))) (taylor -inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x))))) (taylor -inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) (patch #s(approx (+ (* x y) (* (- x 1) 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 (* -1 (* x (+ (* -1 y) (* -1 z)))) (taylor -inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x))))) (taylor -inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x))))) (taylor -inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x))))) (taylor -inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ y z)) (taylor -inf x) (#s(alt (*.f64 (+.f64 z y) x) (patch (*.f64 (+.f64 z y) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ y z)) (taylor -inf x) (#s(alt (*.f64 (+.f64 z y) x) (patch (*.f64 (+.f64 z y) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ y z)) (taylor -inf x) (#s(alt (*.f64 (+.f64 z y) x) (patch (*.f64 (+.f64 z y) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ y z)) (taylor -inf x) (#s(alt (*.f64 (+.f64 z y) x) (patch (*.f64 (+.f64 z y) x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (* -1 z)))) (taylor -inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x))))) (taylor -inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x))))) (taylor -inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x))))) (taylor -inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #<representation binary64>) () ())) ())
#s(alt (* x z) (taylor -inf x) (#s(alt (*.f64 (-.f64 x #s(literal 1 binary64)) z) (patch (*.f64 (-.f64 x #s(literal 1 binary64)) z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 z) (/ z x)))) (taylor -inf x) (#s(alt (*.f64 (-.f64 x #s(literal 1 binary64)) z) (patch (*.f64 (-.f64 x #s(literal 1 binary64)) z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 z) (/ z x)))) (taylor -inf x) (#s(alt (*.f64 (-.f64 x #s(literal 1 binary64)) z) (patch (*.f64 (-.f64 x #s(literal 1 binary64)) z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 z) (/ z x)))) (taylor -inf x) (#s(alt (*.f64 (-.f64 x #s(literal 1 binary64)) z) (patch (*.f64 (-.f64 x #s(literal 1 binary64)) z) #<representation binary64>) () ())) ())
#s(alt x (taylor -inf x) (#s(alt (-.f64 x #s(literal 1 binary64)) (patch (-.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (/ 1 x) 1))) (taylor -inf x) (#s(alt (-.f64 x #s(literal 1 binary64)) (patch (-.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (/ 1 x) 1))) (taylor -inf x) (#s(alt (-.f64 x #s(literal 1 binary64)) (patch (-.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (/ 1 x) 1))) (taylor -inf x) (#s(alt (-.f64 x #s(literal 1 binary64)) (patch (-.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
Calls

9 calls:

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

simplify131.0ms (2.2%)

Memory
33.3MiB live, 180.1MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01002141
13461817
210171817
325591817
452781817
570951817
080831817
Stop Event
iter limit
node limit
Counts
348 → 340
Calls
Call 1
Inputs
(* x y)
(+ (* x y) (* z (- x 1)))
(+ (* x y) (* z (- x 1)))
(+ (* x y) (* z (- x 1)))
(* x y)
(+ (* x y) (* z (- x 1)))
(+ (* x y) (* z (- x 1)))
(+ (* x y) (* z (- x 1)))
y
(+ y z)
(+ y z)
(+ y z)
(* -1 z)
(* -1 z)
(* -1 z)
(* -1 z)
(* x y)
(+ (* x y) (* z (- x 1)))
(+ (* x y) (* z (- x 1)))
(+ (* x y) (* z (- x 1)))
(* x y)
(+ (* x y) (* z (- x 1)))
(+ (* x y) (* z (- x 1)))
(+ (* x y) (* z (- x 1)))
(* x y)
(+ (* x y) (* z (- x 1)))
(+ (* x y) (* z (- x 1)))
(+ (* x y) (* z (- x 1)))
(* x y)
(+ (* x y) (* x z))
(+ (* x y) (* x z))
(+ (* x y) (* x z))
(* x y)
(+ (* x y) (* z (- x 1)))
(+ (* x y) (* z (- x 1)))
(+ (* x y) (* z (- x 1)))
(* z (- x 1))
(* z (- x 1))
(* z (- x 1))
(* z (- x 1))
(* z (- x 1))
(* z (- (+ x (/ (* x y) z)) 1))
(* z (- (+ x (/ (* x y) z)) 1))
(* z (- (+ x (/ (* x y) z)) 1))
(* z (- x 1))
(* z (- (+ x (/ (* x y) z)) 1))
(* z (- (+ x (/ (* x y) z)) 1))
(* z (- (+ x (/ (* x y) z)) 1))
z
(* z (+ 1 (/ y z)))
(* z (+ 1 (/ y z)))
(* z (+ 1 (/ y z)))
(* -1 z)
(* -1 z)
(* -1 z)
(* -1 z)
(* z (- x 1))
(* z (- (+ x (/ (* x y) z)) 1))
(* z (- (+ x (/ (* x y) z)) 1))
(* z (- (+ x (/ (* x y) z)) 1))
(* z (- x 1))
(* z (- (+ x (/ (* x y) z)) 1))
(* z (- (+ x (/ (* x y) z)) 1))
(* z (- (+ x (/ (* x y) z)) 1))
(* z (- x 1))
(* z (- (+ x (/ (* x y) z)) 1))
(* z (- (+ x (/ (* x y) z)) 1))
(* z (- (+ x (/ (* x y) z)) 1))
(* x z)
(* z (+ x (/ (* x y) z)))
(* z (+ x (/ (* x y) z)))
(* z (+ x (/ (* x y) z)))
(* z (- x 1))
(* z (- (+ x (/ (* x y) z)) 1))
(* z (- (+ x (/ (* x y) z)) 1))
(* z (- (+ x (/ (* x y) z)) 1))
(* z (- x 1))
(* z (- x 1))
(* z (- x 1))
(* z (- x 1))
(* z (- x 1))
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(* -1 (* z (+ 1 (* -1 x))))
(* -1 (* z (+ 1 (+ (* -1 x) (* -1 (/ (* x y) z))))))
(* -1 (* z (+ 1 (+ (* -1 x) (* -1 (/ (* x y) z))))))
(* -1 (* z (+ 1 (+ (* -1 x) (* -1 (/ (* x y) z))))))
z
(* -1 (* z (- (* -1 (/ y z)) 1)))
(* -1 (* z (- (* -1 (/ y z)) 1)))
(* -1 (* z (- (* -1 (/ y z)) 1)))
(* -1 z)
(* -1 z)
(* -1 z)
(* -1 z)
(* z (- x 1))
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(* z (- x 1))
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(* z (- x 1))
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(* x z)
(* -1 (* z (+ (* -1 x) (* -1 (/ (* x y) z)))))
(* -1 (* z (+ (* -1 x) (* -1 (/ (* x y) z)))))
(* -1 (* z (+ (* -1 x) (* -1 (/ (* x y) z)))))
(* z (- x 1))
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(* z (- x 1))
(* z (- x 1))
(* z (- x 1))
(* z (- x 1))
(* z (- x 1))
(+ (* x y) (* z (- x 1)))
(+ (* x y) (* z (- x 1)))
(+ (* x y) (* z (- x 1)))
(- (* x z) z)
(- (+ (* x y) (* x z)) z)
(- (+ (* x y) (* x z)) z)
(- (+ (* x y) (* x z)) z)
z
(+ y z)
(+ y z)
(+ y z)
(* z (- x 1))
(+ (* x y) (* z (- x 1)))
(+ (* x y) (* z (- x 1)))
(+ (* x y) (* z (- x 1)))
(* z (- x 1))
(+ (* x y) (* z (- x 1)))
(+ (* x y) (* z (- x 1)))
(+ (* x y) (* z (- x 1)))
(* x y)
(* x y)
(* x y)
(* x y)
(* z (- x 1))
(+ (* x y) (* z (- x 1)))
(+ (* x y) (* z (- x 1)))
(+ (* x y) (* z (- x 1)))
(* x z)
(+ (* x y) (* x z))
(+ (* x y) (* x z))
(+ (* x y) (* x z))
(* z (- x 1))
(+ (* x y) (* z (- x 1)))
(+ (* x y) (* z (- x 1)))
(+ (* x y) (* z (- x 1)))
(* x y)
(* y (+ x (/ (* z (- x 1)) y)))
(* y (+ x (/ (* z (- x 1)) y)))
(* y (+ x (/ (* z (- x 1)) y)))
(* x y)
(* y (- (+ x (/ (* x z) y)) (/ z y)))
(* y (- (+ x (/ (* x z) y)) (/ z y)))
(* y (- (+ x (/ (* x z) y)) (/ z y)))
y
(* y (+ 1 (/ z y)))
(* y (+ 1 (/ z y)))
(* y (+ 1 (/ z y)))
(* x y)
(* y (+ x (/ (* z (- x 1)) y)))
(* y (+ x (/ (* z (- x 1)) y)))
(* y (+ x (/ (* z (- x 1)) y)))
(* x y)
(* y (+ x (/ (* z (- x 1)) y)))
(* y (+ x (/ (* z (- x 1)) y)))
(* y (+ x (/ (* z (- x 1)) y)))
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* y (+ x (/ (* z (- x 1)) y)))
(* y (+ x (/ (* z (- x 1)) y)))
(* y (+ x (/ (* z (- x 1)) y)))
(* x y)
(* y (+ x (/ (* x z) y)))
(* y (+ x (/ (* x z) y)))
(* y (+ x (/ (* x z) y)))
(* x y)
(* y (+ x (/ (* z (- x 1)) y)))
(* y (+ x (/ (* z (- x 1)) y)))
(* y (+ x (/ (* z (- x 1)) y)))
(* x y)
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(* x y)
(* -1 (* y (+ (* -1 x) (* -1 (/ (- (* x z) z) y)))))
(* -1 (* y (+ (* -1 x) (* -1 (/ (- (* x z) z) y)))))
(* -1 (* y (+ (* -1 x) (* -1 (/ (- (* x z) z) y)))))
y
(* -1 (* y (- (* -1 (/ z y)) 1)))
(* -1 (* y (- (* -1 (/ z y)) 1)))
(* -1 (* y (- (* -1 (/ z y)) 1)))
(* x y)
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(* x y)
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(* x y)
(* -1 (* y (+ (* -1 x) (* -1 (/ (* x z) y)))))
(* -1 (* y (+ (* -1 x) (* -1 (/ (* x z) y)))))
(* -1 (* y (+ (* -1 x) (* -1 (/ (* x z) y)))))
(* x y)
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(* -1 z)
(+ (* -1 z) (* x (+ y z)))
(+ (* -1 z) (* x (+ y z)))
(+ (* -1 z) (* x (+ y z)))
(* -1 z)
(- (* x (+ y z)) z)
(- (* x (+ y z)) z)
(- (* x (+ y z)) z)
(* -1 z)
(+ (* -1 z) (* x (+ y z)))
(+ (* -1 z) (* x (+ y z)))
(+ (* -1 z) (* x (+ y z)))
(* -1 z)
(+ (* -1 z) (* x (+ y z)))
(+ (* -1 z) (* x (+ y z)))
(+ (* -1 z) (* x (+ y z)))
(* x y)
(* x y)
(* x y)
(* x y)
(* -1 z)
(+ (* -1 z) (* x (+ y z)))
(+ (* -1 z) (* x (+ y z)))
(+ (* -1 z) (* x (+ y z)))
(* x (+ y z))
(* x (+ y z))
(* x (+ y z))
(* x (+ y z))
(* -1 z)
(+ (* -1 z) (* x (+ y z)))
(+ (* -1 z) (* x (+ y z)))
(+ (* -1 z) (* x (+ y z)))
(* -1 z)
(+ (* -1 z) (* x z))
(+ (* -1 z) (* x z))
(+ (* -1 z) (* x z))
-1
(- x 1)
(- x 1)
(- x 1)
(* x (+ y z))
(* x (+ y (+ z (* -1 (/ z x)))))
(* x (+ y (+ z (* -1 (/ z x)))))
(* x (+ y (+ z (* -1 (/ z x)))))
(* x (+ y z))
(* x (+ y (+ z (* -1 (/ z x)))))
(* x (+ y (+ z (* -1 (/ z x)))))
(* x (+ y (+ z (* -1 (/ z x)))))
(* x (+ y z))
(* x (+ y (+ z (* -1 (/ z x)))))
(* x (+ y (+ z (* -1 (/ z x)))))
(* x (+ y (+ z (* -1 (/ z x)))))
(* x (+ y z))
(* x (+ y (+ z (* -1 (/ z x)))))
(* x (+ y (+ z (* -1 (/ z x)))))
(* x (+ y (+ z (* -1 (/ z x)))))
(* x y)
(* x y)
(* x y)
(* x y)
(* x (+ y z))
(* x (+ y (+ z (* -1 (/ z x)))))
(* x (+ y (+ z (* -1 (/ z x)))))
(* x (+ y (+ z (* -1 (/ z x)))))
(* x (+ y z))
(* x (+ y z))
(* x (+ y z))
(* x (+ y z))
(* x (+ y z))
(* x (+ y (+ z (* -1 (/ z x)))))
(* x (+ y (+ z (* -1 (/ z x)))))
(* x (+ y (+ z (* -1 (/ z x)))))
(* x z)
(* x (+ z (* -1 (/ z x))))
(* x (+ z (* -1 (/ z x))))
(* x (+ z (* -1 (/ z x))))
x
(* x (- 1 (/ 1 x)))
(* x (- 1 (/ 1 x)))
(* x (- 1 (/ 1 x)))
(* -1 (* x (+ (* -1 y) (* -1 z))))
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(* x (+ y z))
(* -1 (* x (+ (* -1 (+ y z)) (/ z x))))
(* -1 (* x (+ (* -1 (+ y z)) (/ z x))))
(* -1 (* x (+ (* -1 (+ y z)) (/ z x))))
(* -1 (* x (+ (* -1 y) (* -1 z))))
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(* -1 (* x (+ (* -1 y) (* -1 z))))
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(* x y)
(* x y)
(* x y)
(* x y)
(* -1 (* x (+ (* -1 y) (* -1 z))))
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(* x (+ y z))
(* x (+ y z))
(* x (+ y z))
(* x (+ y z))
(* -1 (* x (+ (* -1 y) (* -1 z))))
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(* x z)
(* -1 (* x (+ (* -1 z) (/ z x))))
(* -1 (* x (+ (* -1 z) (/ z x))))
(* -1 (* x (+ (* -1 z) (/ z x))))
x
(* -1 (* x (- (/ 1 x) 1)))
(* -1 (* x (- (/ 1 x) 1)))
(* -1 (* x (- (/ 1 x) 1)))
Outputs
(* x y)
(*.f64 y x)
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x y)
(*.f64 y x)
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
y
(+ y z)
(+.f64 z y)
(+ y z)
(+.f64 z y)
(+ y z)
(+.f64 z y)
(* -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)
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x y)
(*.f64 y x)
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x y)
(*.f64 y x)
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x y)
(*.f64 y x)
(+ (* x y) (* x z))
(*.f64 (+.f64 z y) x)
(+ (* x y) (* x z))
(*.f64 (+.f64 z y) x)
(+ (* x y) (* x z))
(*.f64 (+.f64 z y) x)
(* x y)
(*.f64 y x)
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- (+ x (/ (* x y) z)) 1))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* z (- (+ x (/ (* x y) z)) 1))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* z (- (+ x (/ (* x y) z)) 1))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- (+ x (/ (* x y) z)) 1))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* z (- (+ x (/ (* x y) z)) 1))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* z (- (+ x (/ (* x y) z)) 1))
(fma.f64 (+.f64 z y) x (neg.f64 z))
z
(* z (+ 1 (/ y z)))
(+.f64 z y)
(* z (+ 1 (/ y z)))
(+.f64 z y)
(* z (+ 1 (/ y z)))
(+.f64 z y)
(* -1 z)
(neg.f64 z)
(* -1 z)
(neg.f64 z)
(* -1 z)
(neg.f64 z)
(* -1 z)
(neg.f64 z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- (+ x (/ (* x y) z)) 1))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* z (- (+ x (/ (* x y) z)) 1))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* z (- (+ x (/ (* x y) z)) 1))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- (+ x (/ (* x y) z)) 1))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* z (- (+ x (/ (* x y) z)) 1))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* z (- (+ x (/ (* x y) z)) 1))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- (+ x (/ (* x y) z)) 1))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* z (- (+ x (/ (* x y) z)) 1))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* z (- (+ x (/ (* x y) z)) 1))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x z)
(*.f64 z x)
(* z (+ x (/ (* x y) z)))
(*.f64 (+.f64 z y) x)
(* z (+ x (/ (* x y) z)))
(*.f64 (+.f64 z y) x)
(* z (+ x (/ (* x y) z)))
(*.f64 (+.f64 z y) x)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- (+ x (/ (* x y) z)) 1))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* z (- (+ x (/ (* x y) z)) 1))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* z (- (+ x (/ (* x y) z)) 1))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* z (+ 1 (* -1 x))))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* -1 (* z (+ 1 (+ (* -1 x) (* -1 (/ (* x y) z))))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* z (+ 1 (+ (* -1 x) (* -1 (/ (* x y) z))))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* z (+ 1 (+ (* -1 x) (* -1 (/ (* x y) z))))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
z
(* -1 (* z (- (* -1 (/ y z)) 1)))
(+.f64 z y)
(* -1 (* z (- (* -1 (/ y z)) 1)))
(+.f64 z y)
(* -1 (* z (- (* -1 (/ y z)) 1)))
(+.f64 z y)
(* -1 z)
(neg.f64 z)
(* -1 z)
(neg.f64 z)
(* -1 z)
(neg.f64 z)
(* -1 z)
(neg.f64 z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x z)
(*.f64 z x)
(* -1 (* z (+ (* -1 x) (* -1 (/ (* x y) z)))))
(*.f64 (+.f64 z y) x)
(* -1 (* z (+ (* -1 x) (* -1 (/ (* x y) z)))))
(*.f64 (+.f64 z y) x)
(* -1 (* z (+ (* -1 x) (* -1 (/ (* x y) z)))))
(*.f64 (+.f64 z y) x)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(- (* x z) z)
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(- (+ (* x y) (* x z)) z)
(fma.f64 (+.f64 z y) x (neg.f64 z))
(- (+ (* x y) (* x z)) z)
(fma.f64 (+.f64 z y) x (neg.f64 z))
(- (+ (* x y) (* x z)) z)
(fma.f64 (+.f64 z y) x (neg.f64 z))
z
(+ y z)
(+.f64 z y)
(+ y z)
(+.f64 z y)
(+ y z)
(+.f64 z y)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x z)
(*.f64 z x)
(+ (* x y) (* x z))
(*.f64 (+.f64 z y) x)
(+ (* x y) (* x z))
(*.f64 (+.f64 z y) x)
(+ (* x y) (* x z))
(*.f64 (+.f64 z y) x)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x y)
(*.f64 y x)
(* y (+ x (/ (* z (- x 1)) y)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* y (+ x (/ (* z (- x 1)) y)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* y (+ x (/ (* z (- x 1)) y)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x y)
(*.f64 y x)
(* y (- (+ x (/ (* x z) y)) (/ z y)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* y (- (+ x (/ (* x z) y)) (/ z y)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* y (- (+ x (/ (* x z) y)) (/ z y)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
y
(* y (+ 1 (/ z y)))
(+.f64 z y)
(* y (+ 1 (/ z y)))
(+.f64 z y)
(* y (+ 1 (/ z y)))
(+.f64 z y)
(* x y)
(*.f64 y x)
(* y (+ x (/ (* z (- x 1)) y)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* y (+ x (/ (* z (- x 1)) y)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* y (+ x (/ (* z (- x 1)) y)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x y)
(*.f64 y x)
(* y (+ x (/ (* z (- x 1)) y)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* y (+ x (/ (* z (- x 1)) y)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* y (+ x (/ (* z (- x 1)) y)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* 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 (- x 1)) y)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* y (+ x (/ (* z (- x 1)) y)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* y (+ x (/ (* z (- x 1)) y)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x y)
(*.f64 y x)
(* y (+ x (/ (* x z) y)))
(*.f64 (+.f64 z y) x)
(* y (+ x (/ (* x z) y)))
(*.f64 (+.f64 z y) x)
(* y (+ x (/ (* x z) y)))
(*.f64 (+.f64 z y) x)
(* x y)
(*.f64 y x)
(* y (+ x (/ (* z (- x 1)) y)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* y (+ x (/ (* z (- x 1)) y)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* y (+ x (/ (* z (- x 1)) y)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x y)
(*.f64 y x)
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x y)
(*.f64 y x)
(* -1 (* y (+ (* -1 x) (* -1 (/ (- (* x z) z) y)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* y (+ (* -1 x) (* -1 (/ (- (* x z) z) y)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* y (+ (* -1 x) (* -1 (/ (- (* x z) z) y)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
y
(* -1 (* y (- (* -1 (/ z y)) 1)))
(+.f64 z y)
(* -1 (* y (- (* -1 (/ z y)) 1)))
(+.f64 z y)
(* -1 (* y (- (* -1 (/ z y)) 1)))
(+.f64 z y)
(* x y)
(*.f64 y x)
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x y)
(*.f64 y x)
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* 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 (- x 1)) y)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x y)
(*.f64 y x)
(* -1 (* y (+ (* -1 x) (* -1 (/ (* x z) y)))))
(*.f64 (+.f64 z y) x)
(* -1 (* y (+ (* -1 x) (* -1 (/ (* x z) y)))))
(*.f64 (+.f64 z y) x)
(* -1 (* y (+ (* -1 x) (* -1 (/ (* x z) y)))))
(*.f64 (+.f64 z y) x)
(* x y)
(*.f64 y x)
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 z)
(neg.f64 z)
(+ (* -1 z) (* x (+ y z)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* -1 z) (* x (+ y z)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* -1 z) (* x (+ y z)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 z)
(neg.f64 z)
(- (* x (+ y z)) z)
(fma.f64 (+.f64 z y) x (neg.f64 z))
(- (* x (+ y z)) z)
(fma.f64 (+.f64 z y) x (neg.f64 z))
(- (* x (+ y z)) z)
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 z)
(neg.f64 z)
(+ (* -1 z) (* x (+ y z)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* -1 z) (* x (+ y z)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* -1 z) (* x (+ y z)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 z)
(neg.f64 z)
(+ (* -1 z) (* x (+ y z)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* -1 z) (* x (+ y z)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* -1 z) (* x (+ y z)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* -1 z)
(neg.f64 z)
(+ (* -1 z) (* x (+ y z)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* -1 z) (* x (+ y z)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* -1 z) (* x (+ y z)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x (+ y z))
(*.f64 (+.f64 z y) x)
(* x (+ y z))
(*.f64 (+.f64 z y) x)
(* x (+ y z))
(*.f64 (+.f64 z y) x)
(* x (+ y z))
(*.f64 (+.f64 z y) x)
(* -1 z)
(neg.f64 z)
(+ (* -1 z) (* x (+ y z)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* -1 z) (* x (+ y z)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* -1 z) (* x (+ y z)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 z)
(neg.f64 z)
(+ (* -1 z) (* x z))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(+ (* -1 z) (* x z))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(+ (* -1 z) (* x z))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
-1
#s(literal -1 binary64)
(- x 1)
(-.f64 x #s(literal 1 binary64))
(- x 1)
(-.f64 x #s(literal 1 binary64))
(- x 1)
(-.f64 x #s(literal 1 binary64))
(* x (+ y z))
(*.f64 (+.f64 z y) x)
(* x (+ y (+ z (* -1 (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x (+ y (+ z (* -1 (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x (+ y (+ z (* -1 (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x (+ y z))
(*.f64 (+.f64 z y) x)
(* x (+ y (+ z (* -1 (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x (+ y (+ z (* -1 (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x (+ y (+ z (* -1 (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x (+ y z))
(*.f64 (+.f64 z y) x)
(* x (+ y (+ z (* -1 (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x (+ y (+ z (* -1 (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x (+ y (+ z (* -1 (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x (+ y z))
(*.f64 (+.f64 z y) x)
(* x (+ y (+ z (* -1 (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x (+ y (+ z (* -1 (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x (+ y (+ z (* -1 (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x (+ y z))
(*.f64 (+.f64 z y) x)
(* x (+ y (+ z (* -1 (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x (+ y (+ z (* -1 (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x (+ y (+ z (* -1 (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x (+ y z))
(*.f64 (+.f64 z y) x)
(* x (+ y z))
(*.f64 (+.f64 z y) x)
(* x (+ y z))
(*.f64 (+.f64 z y) x)
(* x (+ y z))
(*.f64 (+.f64 z y) x)
(* x (+ y z))
(*.f64 (+.f64 z y) x)
(* x (+ y (+ z (* -1 (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x (+ y (+ z (* -1 (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x (+ y (+ z (* -1 (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x z)
(*.f64 z x)
(* x (+ z (* -1 (/ z x))))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* x (+ z (* -1 (/ z x))))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* x (+ z (* -1 (/ z x))))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
x
(* x (- 1 (/ 1 x)))
(-.f64 x #s(literal 1 binary64))
(* x (- 1 (/ 1 x)))
(-.f64 x #s(literal 1 binary64))
(* x (- 1 (/ 1 x)))
(-.f64 x #s(literal 1 binary64))
(* -1 (* x (+ (* -1 y) (* -1 z))))
(*.f64 (+.f64 z y) x)
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x (+ y z))
(*.f64 (+.f64 z y) x)
(* -1 (* x (+ (* -1 (+ y z)) (/ z x))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* x (+ (* -1 (+ y z)) (/ z x))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* x (+ (* -1 (+ y z)) (/ z x))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* x (+ (* -1 y) (* -1 z))))
(*.f64 (+.f64 z y) x)
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* x (+ (* -1 y) (* -1 z))))
(*.f64 (+.f64 z y) x)
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* -1 (* x (+ (* -1 y) (* -1 z))))
(*.f64 (+.f64 z y) x)
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x (+ y z))
(*.f64 (+.f64 z y) x)
(* x (+ y z))
(*.f64 (+.f64 z y) x)
(* x (+ y z))
(*.f64 (+.f64 z y) x)
(* x (+ y z))
(*.f64 (+.f64 z y) x)
(* -1 (* x (+ (* -1 y) (* -1 z))))
(*.f64 (+.f64 z y) x)
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x z)
(*.f64 z x)
(* -1 (* x (+ (* -1 z) (/ z x))))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* -1 (* x (+ (* -1 z) (/ z x))))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* -1 (* x (+ (* -1 z) (/ z x))))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
x
(* -1 (* x (- (/ 1 x) 1)))
(-.f64 x #s(literal 1 binary64))
(* -1 (* x (- (/ 1 x) 1)))
(-.f64 x #s(literal 1 binary64))
(* -1 (* x (- (/ 1 x) 1)))
(-.f64 x #s(literal 1 binary64))

rewrite268.0ms (4.6%)

Memory
-8.9MiB live, 314.6MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
020100
027100
190100
263881
0919879
Stop Event
iter limit
node limit
iter limit
Counts
12 → 547
Calls
Call 1
Inputs
#s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+.f64 z y)
(neg.f64 z)
#s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z))
#s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x))
(*.f64 y x)
#s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x))
(*.f64 (+.f64 z y) x)
#s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(-.f64 x #s(literal 1 binary64))
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>

eval167.0ms (2.9%)

Memory
4.4MiB live, 314.4MiB allocated
Compiler

Compiled 15 148 to 2 010 computations (86.7% saved)

prune77.0ms (1.3%)

Memory
-40.5MiB live, 98.1MiB allocated
Pruning

8 alts after pruning (4 fresh and 4 done)

PrunedKeptTotal
New1 01231 015
Fresh011
Picked145
Done000
Total1 01381 021
Accuracy
100.0%
Counts
1 021 → 8
Alt Table
Click to see full alt table
StatusAccuracyProgram
81.7%
(+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z)))
100.0%
#s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z)))
58.0%
#s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z))
62.1%
#s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x))
44.3%
#s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x))
39.3%
#s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z))
21.2%
#s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x)))
2.7%
#s(approx (+ (* x y) (* (- x 1) z)) z)
Compiler

Compiled 41 to 46 computations (-12.2% saved)

simplify31.0ms (0.5%)

Memory
16.0MiB live, 51.9MiB allocated
Algorithm
egg-herbie
Localize:

Found 11 expressions of interest:

NewMetricScoreProgram
cost-diff0
(neg.f64 z)
cost-diff0
#s(approx (* (- x 1) z) (neg.f64 z))
cost-diff0
(*.f64 x y)
cost-diff128
(+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z)))
cost-diff0
(*.f64 z x)
cost-diff0
(-.f64 (*.f64 z x) z)
cost-diff0
#s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z))
cost-diff0
(*.f64 z x)
cost-diff0
#s(approx (* (- x 1) z) (*.f64 z x))
cost-diff0
#s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x)))
cost-diff0
#s(approx (+ (* x y) (* (- x 1) z)) z)
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01898
02398
13698
24498
36292
412192
518492
635692
755792
869192
973292
1075192
1176592
1276892
076891
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
#s(approx (+ (* x y) (* (- x 1) z)) z)
z
#s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x)))
#s(approx (* (- x 1) z) (*.f64 z x))
(*.f64 z x)
z
x
#s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z))
(-.f64 (*.f64 z x) z)
(*.f64 z x)
z
x
(+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z)))
(*.f64 x y)
x
y
#s(approx (* (- x 1) z) (neg.f64 z))
(neg.f64 z)
z
Outputs
#s(approx (+ (* x y) (* (- x 1) z)) z)
z
#s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x)))
#s(approx (* (- x 1) z) (*.f64 z x))
(*.f64 z x)
z
x
#s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z))
#s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z))
(-.f64 (*.f64 z x) z)
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(*.f64 z x)
z
x
(+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z)))
(fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z)))
(*.f64 x y)
(*.f64 y x)
x
y
#s(approx (* (- x 1) z) (neg.f64 z))
(neg.f64 z)
z

localize55.0ms (0.9%)

Memory
-16.9MiB live, 70.6MiB allocated
Localize:

Found 11 expressions of interest:

NewMetricScoreProgram
accuracy0
(*.f64 x y)
accuracy0
(neg.f64 z)
accuracy1.9999917433208234
(+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z)))
accuracy27.56493979387876
#s(approx (* (- x 1) z) (neg.f64 z))
accuracy0
(*.f64 z x)
accuracy0.00390625
(-.f64 (*.f64 z x) z)
accuracy26.85494243011961
#s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z))
accuracy0
(*.f64 z x)
accuracy26.85494243011961
#s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x)))
accuracy34.833615646861475
#s(approx (* (- x 1) z) (*.f64 z x))
accuracy62.28581242131557
#s(approx (+ (* x y) (* (- x 1) z)) z)
Samples
45.0ms256×0valid
Compiler

Compiled 72 to 13 computations (81.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 12.0ms
ival-mult: 6.0ms (50% of total)
ival-sub: 3.0ms (25% of total)
ival-add: 1.0ms (8.3% of total)
ival-neg: 1.0ms (8.3% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series12.0ms (0.2%)

Memory
20.6MiB live, 20.6MiB allocated
Counts
10 → 276
Calls
Call 1
Inputs
#s(alt #s(approx (+ (* x y) (* (- x 1) z)) z) (patch #s(approx (+ (* x y) (* (- x 1) z)) z) #<representation binary64>) () ())
#s(alt #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) (patch #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) #<representation binary64>) () ())
#s(alt #s(approx (* (- x 1) z) (*.f64 z x)) (patch #s(approx (* (- x 1) z) (*.f64 z x)) #<representation binary64>) () ())
#s(alt (*.f64 z x) (patch (*.f64 z x) #<representation binary64>) () ())
#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) #<representation binary64>) () ())
#s(alt (-.f64 (*.f64 z x) z) (patch (-.f64 (*.f64 z x) z) #<representation binary64>) () ())
#s(alt (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) (patch (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())
#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())
#s(alt #s(approx (* (- x 1) z) (neg.f64 z)) (patch #s(approx (* (- x 1) z) (neg.f64 z)) #<representation binary64>) () ())
#s(alt (neg.f64 z) (patch (neg.f64 z) #<representation binary64>) () ())
Outputs
#s(alt (* x y) (taylor 0 z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) z) (patch #s(approx (+ (* x y) (* (- x 1) z)) z) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) z) (patch #s(approx (+ (* x y) (* (- x 1) z)) z) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) z) (patch #s(approx (+ (* x y) (* (- x 1) z)) z) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) z) (patch #s(approx (+ (* x y) (* (- x 1) z)) z) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) (patch #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) (patch #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) (patch #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) (patch #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor 0 z) (#s(alt #s(approx (* (- x 1) z) (*.f64 z x)) (patch #s(approx (* (- x 1) z) (*.f64 z x)) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor 0 z) (#s(alt #s(approx (* (- x 1) z) (*.f64 z x)) (patch #s(approx (* (- x 1) z) (*.f64 z x)) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor 0 z) (#s(alt #s(approx (* (- x 1) z) (*.f64 z x)) (patch #s(approx (* (- x 1) z) (*.f64 z x)) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor 0 z) (#s(alt #s(approx (* (- x 1) z) (*.f64 z x)) (patch #s(approx (* (- x 1) z) (*.f64 z x)) #<representation binary64>) () ())) ())
#s(alt (* x z) (taylor 0 z) (#s(alt (*.f64 z x) (patch (*.f64 z x) #<representation binary64>) () ())) ())
#s(alt (* x z) (taylor 0 z) (#s(alt (*.f64 z x) (patch (*.f64 z x) #<representation binary64>) () ())) ())
#s(alt (* x z) (taylor 0 z) (#s(alt (*.f64 z x) (patch (*.f64 z x) #<representation binary64>) () ())) ())
#s(alt (* x z) (taylor 0 z) (#s(alt (*.f64 z x) (patch (*.f64 z x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor 0 z) (#s(alt (-.f64 (*.f64 z x) z) (patch (-.f64 (*.f64 z x) z) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor 0 z) (#s(alt (-.f64 (*.f64 z x) z) (patch (-.f64 (*.f64 z x) z) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor 0 z) (#s(alt (-.f64 (*.f64 z x) z) (patch (-.f64 (*.f64 z x) z) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor 0 z) (#s(alt (-.f64 (*.f64 z x) z) (patch (-.f64 (*.f64 z x) z) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 z) (#s(alt (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) (patch (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 z) (#s(alt (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) (patch (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 z) (#s(alt (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) (patch (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 z) (#s(alt (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) (patch (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor 0 z) (#s(alt #s(approx (* (- x 1) z) (neg.f64 z)) (patch #s(approx (* (- x 1) z) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor 0 z) (#s(alt #s(approx (* (- x 1) z) (neg.f64 z)) (patch #s(approx (* (- x 1) z) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor 0 z) (#s(alt #s(approx (* (- x 1) z) (neg.f64 z)) (patch #s(approx (* (- x 1) z) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor 0 z) (#s(alt #s(approx (* (- x 1) z) (neg.f64 z)) (patch #s(approx (* (- x 1) z) (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 (* -1 z) (taylor 0 z) (#s(alt (neg.f64 z) (patch (neg.f64 z) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) z) (patch #s(approx (+ (* x y) (* (- x 1) z)) z) #<representation binary64>) () ())) ())
#s(alt (* z (- (+ x (/ (* x y) z)) 1)) (taylor inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) z) (patch #s(approx (+ (* x y) (* (- x 1) z)) z) #<representation binary64>) () ())) ())
#s(alt (* z (- (+ x (/ (* x y) z)) 1)) (taylor inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) z) (patch #s(approx (+ (* x y) (* (- x 1) z)) z) #<representation binary64>) () ())) ())
#s(alt (* z (- (+ x (/ (* x y) z)) 1)) (taylor inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) z) (patch #s(approx (+ (* x y) (* (- x 1) z)) z) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) (patch #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) #<representation binary64>) () ())) ())
#s(alt (* z (- (+ x (/ (* x y) z)) 1)) (taylor inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) (patch #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) #<representation binary64>) () ())) ())
#s(alt (* z (- (+ x (/ (* x y) z)) 1)) (taylor inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) (patch #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) #<representation binary64>) () ())) ())
#s(alt (* z (- (+ x (/ (* x y) z)) 1)) (taylor inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) (patch #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor inf z) (#s(alt #s(approx (* (- x 1) z) (*.f64 z x)) (patch #s(approx (* (- x 1) z) (*.f64 z x)) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor inf z) (#s(alt #s(approx (* (- x 1) z) (*.f64 z x)) (patch #s(approx (* (- x 1) z) (*.f64 z x)) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor inf z) (#s(alt #s(approx (* (- x 1) z) (*.f64 z x)) (patch #s(approx (* (- x 1) z) (*.f64 z x)) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor inf z) (#s(alt #s(approx (* (- x 1) z) (*.f64 z x)) (patch #s(approx (* (- x 1) z) (*.f64 z x)) #<representation binary64>) () ())) ())
#s(alt (* x z) (taylor inf z) (#s(alt (*.f64 z x) (patch (*.f64 z x) #<representation binary64>) () ())) ())
#s(alt (* x z) (taylor inf z) (#s(alt (*.f64 z x) (patch (*.f64 z x) #<representation binary64>) () ())) ())
#s(alt (* x z) (taylor inf z) (#s(alt (*.f64 z x) (patch (*.f64 z x) #<representation binary64>) () ())) ())
#s(alt (* x z) (taylor inf z) (#s(alt (*.f64 z x) (patch (*.f64 z x) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) #<representation binary64>) () ())) ())
#s(alt (* z (- (+ x (/ (* x y) z)) 1)) (taylor inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) #<representation binary64>) () ())) ())
#s(alt (* z (- (+ x (/ (* x y) z)) 1)) (taylor inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) #<representation binary64>) () ())) ())
#s(alt (* z (- (+ x (/ (* x y) z)) 1)) (taylor inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor inf z) (#s(alt (-.f64 (*.f64 z x) z) (patch (-.f64 (*.f64 z x) z) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor inf z) (#s(alt (-.f64 (*.f64 z x) z) (patch (-.f64 (*.f64 z x) z) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor inf z) (#s(alt (-.f64 (*.f64 z x) z) (patch (-.f64 (*.f64 z x) z) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor inf z) (#s(alt (-.f64 (*.f64 z x) z) (patch (-.f64 (*.f64 z x) z) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor inf z) (#s(alt (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) (patch (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* z (- (+ x (/ (* x y) z)) 1)) (taylor inf z) (#s(alt (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) (patch (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* z (- (+ x (/ (* x y) z)) 1)) (taylor inf z) (#s(alt (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) (patch (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* z (- (+ x (/ (* x y) z)) 1)) (taylor inf z) (#s(alt (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) (patch (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor inf z) (#s(alt #s(approx (* (- x 1) z) (neg.f64 z)) (patch #s(approx (* (- x 1) z) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor inf z) (#s(alt #s(approx (* (- x 1) z) (neg.f64 z)) (patch #s(approx (* (- x 1) z) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor inf z) (#s(alt #s(approx (* (- x 1) z) (neg.f64 z)) (patch #s(approx (* (- x 1) z) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor inf z) (#s(alt #s(approx (* (- x 1) z) (neg.f64 z)) (patch #s(approx (* (- x 1) z) (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 z) (taylor inf z) (#s(alt (neg.f64 z) (patch (neg.f64 z) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor -inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) z) (patch #s(approx (+ (* x y) (* (- x 1) z)) z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z))))) (taylor -inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) z) (patch #s(approx (+ (* x y) (* (- x 1) z)) z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z))))) (taylor -inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) z) (patch #s(approx (+ (* x y) (* (- x 1) z)) z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z))))) (taylor -inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) z) (patch #s(approx (+ (* x y) (* (- x 1) z)) z) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor -inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) (patch #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z))))) (taylor -inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) (patch #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z))))) (taylor -inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) (patch #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z))))) (taylor -inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) (patch #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor -inf z) (#s(alt #s(approx (* (- x 1) z) (*.f64 z x)) (patch #s(approx (* (- x 1) z) (*.f64 z x)) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor -inf z) (#s(alt #s(approx (* (- x 1) z) (*.f64 z x)) (patch #s(approx (* (- x 1) z) (*.f64 z x)) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor -inf z) (#s(alt #s(approx (* (- x 1) z) (*.f64 z x)) (patch #s(approx (* (- x 1) z) (*.f64 z x)) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor -inf z) (#s(alt #s(approx (* (- x 1) z) (*.f64 z x)) (patch #s(approx (* (- x 1) z) (*.f64 z x)) #<representation binary64>) () ())) ())
#s(alt (* x z) (taylor -inf z) (#s(alt (*.f64 z x) (patch (*.f64 z x) #<representation binary64>) () ())) ())
#s(alt (* x z) (taylor -inf z) (#s(alt (*.f64 z x) (patch (*.f64 z x) #<representation binary64>) () ())) ())
#s(alt (* x z) (taylor -inf z) (#s(alt (*.f64 z x) (patch (*.f64 z x) #<representation binary64>) () ())) ())
#s(alt (* x z) (taylor -inf z) (#s(alt (*.f64 z x) (patch (*.f64 z x) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor -inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z))))) (taylor -inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z))))) (taylor -inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z))))) (taylor -inf z) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (+ 1 (* -1 x)))) (taylor -inf z) (#s(alt (-.f64 (*.f64 z x) z) (patch (-.f64 (*.f64 z x) z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (+ 1 (* -1 x)))) (taylor -inf z) (#s(alt (-.f64 (*.f64 z x) z) (patch (-.f64 (*.f64 z x) z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (+ 1 (* -1 x)))) (taylor -inf z) (#s(alt (-.f64 (*.f64 z x) z) (patch (-.f64 (*.f64 z x) z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (+ 1 (* -1 x)))) (taylor -inf z) (#s(alt (-.f64 (*.f64 z x) z) (patch (-.f64 (*.f64 z x) z) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor -inf z) (#s(alt (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) (patch (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z))))) (taylor -inf z) (#s(alt (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) (patch (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z))))) (taylor -inf z) (#s(alt (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) (patch (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z))))) (taylor -inf z) (#s(alt (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) (patch (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor -inf z) (#s(alt #s(approx (* (- x 1) z) (neg.f64 z)) (patch #s(approx (* (- x 1) z) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor -inf z) (#s(alt #s(approx (* (- x 1) z) (neg.f64 z)) (patch #s(approx (* (- x 1) z) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor -inf z) (#s(alt #s(approx (* (- x 1) z) (neg.f64 z)) (patch #s(approx (* (- x 1) z) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor -inf z) (#s(alt #s(approx (* (- x 1) z) (neg.f64 z)) (patch #s(approx (* (- x 1) z) (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 z) (taylor -inf z) (#s(alt (neg.f64 z) (patch (neg.f64 z) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor 0 y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) z) (patch #s(approx (+ (* x y) (* (- x 1) z)) z) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) z) (patch #s(approx (+ (* x y) (* (- x 1) z)) z) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) z) (patch #s(approx (+ (* x y) (* (- x 1) z)) z) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) z) (patch #s(approx (+ (* x y) (* (- x 1) z)) z) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor 0 y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) (patch #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) (patch #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) (patch #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) (patch #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor 0 y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor 0 y) (#s(alt (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) (patch (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 y) (#s(alt (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) (patch (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 y) (#s(alt (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) (patch (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 y) (#s(alt (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) (patch (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) #<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 #s(approx (+ (* x y) (* (- x 1) z)) z) (patch #s(approx (+ (* x y) (* (- x 1) z)) z) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (/ (* z (- x 1)) y))) (taylor inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) z) (patch #s(approx (+ (* x y) (* (- x 1) z)) z) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (/ (* z (- x 1)) y))) (taylor inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) z) (patch #s(approx (+ (* x y) (* (- x 1) z)) z) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (/ (* z (- x 1)) y))) (taylor inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) z) (patch #s(approx (+ (* x y) (* (- x 1) z)) z) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) (patch #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (/ (* z (- x 1)) y))) (taylor inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) (patch #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (/ (* z (- x 1)) y))) (taylor inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) (patch #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (/ (* z (- x 1)) y))) (taylor inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) (patch #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (/ (* z (- x 1)) y))) (taylor inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (/ (* z (- x 1)) y))) (taylor inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (/ (* z (- x 1)) y))) (taylor inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf y) (#s(alt (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) (patch (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (/ (* z (- x 1)) y))) (taylor inf y) (#s(alt (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) (patch (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (/ (* z (- x 1)) y))) (taylor inf y) (#s(alt (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) (patch (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (/ (* z (- x 1)) y))) (taylor inf y) (#s(alt (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) (patch (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) #<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 #s(approx (+ (* x y) (* (- x 1) z)) z) (patch #s(approx (+ (* x y) (* (- x 1) z)) z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y))))) (taylor -inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) z) (patch #s(approx (+ (* x y) (* (- x 1) z)) z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y))))) (taylor -inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) z) (patch #s(approx (+ (* x y) (* (- x 1) z)) z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y))))) (taylor -inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) z) (patch #s(approx (+ (* x y) (* (- x 1) z)) z) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) (patch #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y))))) (taylor -inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) (patch #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y))))) (taylor -inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) (patch #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y))))) (taylor -inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) (patch #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y))))) (taylor -inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y))))) (taylor -inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y))))) (taylor -inf y) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf y) (#s(alt (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) (patch (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y))))) (taylor -inf y) (#s(alt (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) (patch (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y))))) (taylor -inf y) (#s(alt (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) (patch (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y))))) (taylor -inf y) (#s(alt (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) (patch (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) #<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 (* -1 z) (taylor 0 x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) z) (patch #s(approx (+ (* x y) (* (- x 1) z)) z) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 z) (* x (+ y z))) (taylor 0 x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) z) (patch #s(approx (+ (* x y) (* (- x 1) z)) z) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 z) (* x (+ y z))) (taylor 0 x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) z) (patch #s(approx (+ (* x y) (* (- x 1) z)) z) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 z) (* x (+ y z))) (taylor 0 x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) z) (patch #s(approx (+ (* x y) (* (- x 1) z)) z) #<representation binary64>) () ())) ())
#s(alt (* -1 z) (taylor 0 x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) (patch #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 z) (* x (+ y z))) (taylor 0 x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) (patch #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 z) (* x (+ y z))) (taylor 0 x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) (patch #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 z) (* x (+ y z))) (taylor 0 x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) (patch #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) #<representation binary64>) () ())) ())
#s(alt (* -1 z) (taylor 0 x) (#s(alt #s(approx (* (- x 1) z) (*.f64 z x)) (patch #s(approx (* (- x 1) z) (*.f64 z x)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 z) (* x z)) (taylor 0 x) (#s(alt #s(approx (* (- x 1) z) (*.f64 z x)) (patch #s(approx (* (- x 1) z) (*.f64 z x)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 z) (* x z)) (taylor 0 x) (#s(alt #s(approx (* (- x 1) z) (*.f64 z x)) (patch #s(approx (* (- x 1) z) (*.f64 z x)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 z) (* x z)) (taylor 0 x) (#s(alt #s(approx (* (- x 1) z) (*.f64 z x)) (patch #s(approx (* (- x 1) z) (*.f64 z x)) #<representation binary64>) () ())) ())
#s(alt (* x z) (taylor 0 x) (#s(alt (*.f64 z x) (patch (*.f64 z x) #<representation binary64>) () ())) ())
#s(alt (* x z) (taylor 0 x) (#s(alt (*.f64 z x) (patch (*.f64 z x) #<representation binary64>) () ())) ())
#s(alt (* x z) (taylor 0 x) (#s(alt (*.f64 z x) (patch (*.f64 z x) #<representation binary64>) () ())) ())
#s(alt (* x z) (taylor 0 x) (#s(alt (*.f64 z x) (patch (*.f64 z x) #<representation binary64>) () ())) ())
#s(alt (* -1 z) (taylor 0 x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 z) (* x (+ y z))) (taylor 0 x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 z) (* x (+ y z))) (taylor 0 x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 z) (* x (+ y z))) (taylor 0 x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) #<representation binary64>) () ())) ())
#s(alt (* -1 z) (taylor 0 x) (#s(alt (-.f64 (*.f64 z x) z) (patch (-.f64 (*.f64 z x) z) #<representation binary64>) () ())) ())
#s(alt (- (* x z) z) (taylor 0 x) (#s(alt (-.f64 (*.f64 z x) z) (patch (-.f64 (*.f64 z x) z) #<representation binary64>) () ())) ())
#s(alt (- (* x z) z) (taylor 0 x) (#s(alt (-.f64 (*.f64 z x) z) (patch (-.f64 (*.f64 z x) z) #<representation binary64>) () ())) ())
#s(alt (- (* x z) z) (taylor 0 x) (#s(alt (-.f64 (*.f64 z x) z) (patch (-.f64 (*.f64 z x) z) #<representation binary64>) () ())) ())
#s(alt (* -1 z) (taylor 0 x) (#s(alt (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) (patch (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 z) (* x (+ y z))) (taylor 0 x) (#s(alt (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) (patch (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 z) (* x (+ y z))) (taylor 0 x) (#s(alt (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) (patch (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 z) (* x (+ y z))) (taylor 0 x) (#s(alt (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) (patch (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) #<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 (* -1 z) (taylor 0 x) (#s(alt #s(approx (* (- x 1) z) (neg.f64 z)) (patch #s(approx (* (- x 1) z) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 z) (* x z)) (taylor 0 x) (#s(alt #s(approx (* (- x 1) z) (neg.f64 z)) (patch #s(approx (* (- x 1) z) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 z) (* x z)) (taylor 0 x) (#s(alt #s(approx (* (- x 1) z) (neg.f64 z)) (patch #s(approx (* (- x 1) z) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 z) (* x z)) (taylor 0 x) (#s(alt #s(approx (* (- x 1) z) (neg.f64 z)) (patch #s(approx (* (- x 1) z) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* x (+ y z)) (taylor inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) z) (patch #s(approx (+ (* x y) (* (- x 1) z)) z) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (+ z (* -1 (/ z x))))) (taylor inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) z) (patch #s(approx (+ (* x y) (* (- x 1) z)) z) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (+ z (* -1 (/ z x))))) (taylor inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) z) (patch #s(approx (+ (* x y) (* (- x 1) z)) z) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (+ z (* -1 (/ z x))))) (taylor inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) z) (patch #s(approx (+ (* x y) (* (- x 1) z)) z) #<representation binary64>) () ())) ())
#s(alt (* x (+ y z)) (taylor inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) (patch #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (+ z (* -1 (/ z x))))) (taylor inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) (patch #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (+ z (* -1 (/ z x))))) (taylor inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) (patch #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (+ z (* -1 (/ z x))))) (taylor inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) (patch #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) #<representation binary64>) () ())) ())
#s(alt (* x z) (taylor inf x) (#s(alt #s(approx (* (- x 1) z) (*.f64 z x)) (patch #s(approx (* (- x 1) z) (*.f64 z x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ z (* -1 (/ z x)))) (taylor inf x) (#s(alt #s(approx (* (- x 1) z) (*.f64 z x)) (patch #s(approx (* (- x 1) z) (*.f64 z x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ z (* -1 (/ z x)))) (taylor inf x) (#s(alt #s(approx (* (- x 1) z) (*.f64 z x)) (patch #s(approx (* (- x 1) z) (*.f64 z x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ z (* -1 (/ z x)))) (taylor inf x) (#s(alt #s(approx (* (- x 1) z) (*.f64 z x)) (patch #s(approx (* (- x 1) z) (*.f64 z x)) #<representation binary64>) () ())) ())
#s(alt (* x z) (taylor inf x) (#s(alt (*.f64 z x) (patch (*.f64 z x) #<representation binary64>) () ())) ())
#s(alt (* x z) (taylor inf x) (#s(alt (*.f64 z x) (patch (*.f64 z x) #<representation binary64>) () ())) ())
#s(alt (* x z) (taylor inf x) (#s(alt (*.f64 z x) (patch (*.f64 z x) #<representation binary64>) () ())) ())
#s(alt (* x z) (taylor inf x) (#s(alt (*.f64 z x) (patch (*.f64 z x) #<representation binary64>) () ())) ())
#s(alt (* x (+ y z)) (taylor inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (+ z (* -1 (/ z x))))) (taylor inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (+ z (* -1 (/ z x))))) (taylor inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (+ z (* -1 (/ z x))))) (taylor inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) #<representation binary64>) () ())) ())
#s(alt (* x z) (taylor inf x) (#s(alt (-.f64 (*.f64 z x) z) (patch (-.f64 (*.f64 z x) z) #<representation binary64>) () ())) ())
#s(alt (* x (+ z (* -1 (/ z x)))) (taylor inf x) (#s(alt (-.f64 (*.f64 z x) z) (patch (-.f64 (*.f64 z x) z) #<representation binary64>) () ())) ())
#s(alt (* x (+ z (* -1 (/ z x)))) (taylor inf x) (#s(alt (-.f64 (*.f64 z x) z) (patch (-.f64 (*.f64 z x) z) #<representation binary64>) () ())) ())
#s(alt (* x (+ z (* -1 (/ z x)))) (taylor inf x) (#s(alt (-.f64 (*.f64 z x) z) (patch (-.f64 (*.f64 z x) z) #<representation binary64>) () ())) ())
#s(alt (* x (+ y z)) (taylor inf x) (#s(alt (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) (patch (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (+ z (* -1 (/ z x))))) (taylor inf x) (#s(alt (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) (patch (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (+ z (* -1 (/ z x))))) (taylor inf x) (#s(alt (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) (patch (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (+ z (* -1 (/ z x))))) (taylor inf x) (#s(alt (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) (patch (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) #<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 z) (taylor inf x) (#s(alt #s(approx (* (- x 1) z) (neg.f64 z)) (patch #s(approx (* (- x 1) z) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* x (+ z (* -1 (/ z x)))) (taylor inf x) (#s(alt #s(approx (* (- x 1) z) (neg.f64 z)) (patch #s(approx (* (- x 1) z) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* x (+ z (* -1 (/ z x)))) (taylor inf x) (#s(alt #s(approx (* (- x 1) z) (neg.f64 z)) (patch #s(approx (* (- x 1) z) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* x (+ z (* -1 (/ z x)))) (taylor inf x) (#s(alt #s(approx (* (- x 1) z) (neg.f64 z)) (patch #s(approx (* (- x 1) z) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (* -1 z)))) (taylor -inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) z) (patch #s(approx (+ (* x y) (* (- x 1) z)) z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x))))) (taylor -inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) z) (patch #s(approx (+ (* x y) (* (- x 1) z)) z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x))))) (taylor -inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) z) (patch #s(approx (+ (* x y) (* (- x 1) z)) z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x))))) (taylor -inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) z) (patch #s(approx (+ (* x y) (* (- x 1) z)) z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (* -1 z)))) (taylor -inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) (patch #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x))))) (taylor -inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) (patch #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x))))) (taylor -inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) (patch #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x))))) (taylor -inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) (patch #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) #<representation binary64>) () ())) ())
#s(alt (* x z) (taylor -inf x) (#s(alt #s(approx (* (- x 1) z) (*.f64 z x)) (patch #s(approx (* (- x 1) z) (*.f64 z x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 z) (/ z x)))) (taylor -inf x) (#s(alt #s(approx (* (- x 1) z) (*.f64 z x)) (patch #s(approx (* (- x 1) z) (*.f64 z x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 z) (/ z x)))) (taylor -inf x) (#s(alt #s(approx (* (- x 1) z) (*.f64 z x)) (patch #s(approx (* (- x 1) z) (*.f64 z x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 z) (/ z x)))) (taylor -inf x) (#s(alt #s(approx (* (- x 1) z) (*.f64 z x)) (patch #s(approx (* (- x 1) z) (*.f64 z x)) #<representation binary64>) () ())) ())
#s(alt (* x z) (taylor -inf x) (#s(alt (*.f64 z x) (patch (*.f64 z x) #<representation binary64>) () ())) ())
#s(alt (* x z) (taylor -inf x) (#s(alt (*.f64 z x) (patch (*.f64 z x) #<representation binary64>) () ())) ())
#s(alt (* x z) (taylor -inf x) (#s(alt (*.f64 z x) (patch (*.f64 z x) #<representation binary64>) () ())) ())
#s(alt (* x z) (taylor -inf x) (#s(alt (*.f64 z x) (patch (*.f64 z x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (* -1 z)))) (taylor -inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x))))) (taylor -inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x))))) (taylor -inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x))))) (taylor -inf x) (#s(alt #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) (patch #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) #<representation binary64>) () ())) ())
#s(alt (* x z) (taylor -inf x) (#s(alt (-.f64 (*.f64 z x) z) (patch (-.f64 (*.f64 z x) z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 z) (/ z x)))) (taylor -inf x) (#s(alt (-.f64 (*.f64 z x) z) (patch (-.f64 (*.f64 z x) z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 z) (/ z x)))) (taylor -inf x) (#s(alt (-.f64 (*.f64 z x) z) (patch (-.f64 (*.f64 z x) z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 z) (/ z x)))) (taylor -inf x) (#s(alt (-.f64 (*.f64 z x) z) (patch (-.f64 (*.f64 z x) z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (* -1 z)))) (taylor -inf x) (#s(alt (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) (patch (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x))))) (taylor -inf x) (#s(alt (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) (patch (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x))))) (taylor -inf x) (#s(alt (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) (patch (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x))))) (taylor -inf x) (#s(alt (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) (patch (+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z))) #<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 z) (taylor -inf x) (#s(alt #s(approx (* (- x 1) z) (neg.f64 z)) (patch #s(approx (* (- x 1) z) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 z) (/ z x)))) (taylor -inf x) (#s(alt #s(approx (* (- x 1) z) (neg.f64 z)) (patch #s(approx (* (- x 1) z) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 z) (/ z x)))) (taylor -inf x) (#s(alt #s(approx (* (- x 1) z) (neg.f64 z)) (patch #s(approx (* (- x 1) z) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 z) (/ z x)))) (taylor -inf x) (#s(alt #s(approx (* (- x 1) z) (neg.f64 z)) (patch #s(approx (* (- x 1) z) (neg.f64 z)) #<representation binary64>) () ())) ())
Calls

9 calls:

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

simplify114.0ms (2%)

Memory
12.3MiB live, 123.7MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0521623
11821407
25281407
315041407
439201407
558781407
678341407
080291407
Stop Event
iter limit
node limit
Counts
276 → 276
Calls
Call 1
Inputs
(* x y)
(+ (* x y) (* z (- x 1)))
(+ (* x y) (* z (- x 1)))
(+ (* x y) (* z (- x 1)))
(* x y)
(+ (* x y) (* z (- x 1)))
(+ (* x y) (* z (- x 1)))
(+ (* x y) (* z (- x 1)))
(* z (- x 1))
(* z (- x 1))
(* z (- x 1))
(* z (- x 1))
(* x z)
(* x z)
(* x z)
(* x z)
(* x y)
(+ (* x y) (* z (- x 1)))
(+ (* x y) (* z (- x 1)))
(+ (* x y) (* z (- x 1)))
(* z (- x 1))
(* z (- x 1))
(* z (- x 1))
(* z (- x 1))
(* x y)
(+ (* x y) (* z (- x 1)))
(+ (* x y) (* z (- x 1)))
(+ (* x y) (* z (- x 1)))
(* z (- x 1))
(* z (- x 1))
(* z (- x 1))
(* z (- x 1))
(* -1 z)
(* -1 z)
(* -1 z)
(* -1 z)
(* z (- x 1))
(* z (- (+ x (/ (* x y) z)) 1))
(* z (- (+ x (/ (* x y) z)) 1))
(* z (- (+ x (/ (* x y) z)) 1))
(* z (- x 1))
(* z (- (+ x (/ (* x y) z)) 1))
(* z (- (+ x (/ (* x y) z)) 1))
(* z (- (+ x (/ (* x y) z)) 1))
(* z (- x 1))
(* z (- x 1))
(* z (- x 1))
(* z (- x 1))
(* x z)
(* x z)
(* x z)
(* x z)
(* z (- x 1))
(* z (- (+ x (/ (* x y) z)) 1))
(* z (- (+ x (/ (* x y) z)) 1))
(* z (- (+ x (/ (* x y) z)) 1))
(* z (- x 1))
(* z (- x 1))
(* z (- x 1))
(* z (- x 1))
(* z (- x 1))
(* z (- (+ x (/ (* x y) z)) 1))
(* z (- (+ x (/ (* x y) z)) 1))
(* z (- (+ x (/ (* x y) z)) 1))
(* z (- x 1))
(* z (- x 1))
(* z (- x 1))
(* z (- x 1))
(* -1 z)
(* -1 z)
(* -1 z)
(* -1 z)
(* z (- x 1))
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(* z (- x 1))
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(* z (- x 1))
(* z (- x 1))
(* z (- x 1))
(* z (- x 1))
(* x z)
(* x z)
(* x z)
(* x z)
(* z (- x 1))
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(* -1 (* z (+ 1 (* -1 x))))
(* -1 (* z (+ 1 (* -1 x))))
(* -1 (* z (+ 1 (* -1 x))))
(* -1 (* z (+ 1 (* -1 x))))
(* z (- x 1))
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(* z (- x 1))
(* z (- x 1))
(* z (- x 1))
(* z (- x 1))
(* -1 z)
(* -1 z)
(* -1 z)
(* -1 z)
(* z (- x 1))
(+ (* x y) (* z (- x 1)))
(+ (* x y) (* z (- x 1)))
(+ (* x y) (* z (- x 1)))
(* z (- x 1))
(+ (* x y) (* z (- x 1)))
(+ (* x y) (* z (- x 1)))
(+ (* x y) (* z (- x 1)))
(* z (- x 1))
(+ (* x y) (* z (- x 1)))
(+ (* x y) (* z (- x 1)))
(+ (* x y) (* z (- x 1)))
(* z (- x 1))
(+ (* x y) (* z (- x 1)))
(+ (* x y) (* z (- x 1)))
(+ (* x y) (* z (- x 1)))
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* y (+ x (/ (* z (- x 1)) y)))
(* y (+ x (/ (* z (- x 1)) y)))
(* y (+ x (/ (* z (- x 1)) y)))
(* x y)
(* y (+ x (/ (* z (- x 1)) y)))
(* y (+ x (/ (* z (- x 1)) y)))
(* y (+ x (/ (* z (- x 1)) y)))
(* x y)
(* y (+ x (/ (* z (- x 1)) y)))
(* y (+ x (/ (* z (- x 1)) y)))
(* y (+ x (/ (* z (- x 1)) y)))
(* x y)
(* y (+ x (/ (* z (- x 1)) y)))
(* y (+ x (/ (* z (- x 1)) y)))
(* y (+ x (/ (* z (- x 1)) y)))
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(* x y)
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(* x y)
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(* x y)
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(* x y)
(* x y)
(* x y)
(* x y)
(* -1 z)
(+ (* -1 z) (* x (+ y z)))
(+ (* -1 z) (* x (+ y z)))
(+ (* -1 z) (* x (+ y z)))
(* -1 z)
(+ (* -1 z) (* x (+ y z)))
(+ (* -1 z) (* x (+ y z)))
(+ (* -1 z) (* x (+ y z)))
(* -1 z)
(+ (* -1 z) (* x z))
(+ (* -1 z) (* x z))
(+ (* -1 z) (* x z))
(* x z)
(* x z)
(* x z)
(* x z)
(* -1 z)
(+ (* -1 z) (* x (+ y z)))
(+ (* -1 z) (* x (+ y z)))
(+ (* -1 z) (* x (+ y z)))
(* -1 z)
(- (* x z) z)
(- (* x z) z)
(- (* x z) z)
(* -1 z)
(+ (* -1 z) (* x (+ y z)))
(+ (* -1 z) (* x (+ y z)))
(+ (* -1 z) (* x (+ y z)))
(* x y)
(* x y)
(* x y)
(* x y)
(* -1 z)
(+ (* -1 z) (* x z))
(+ (* -1 z) (* x z))
(+ (* -1 z) (* x z))
(* x (+ y z))
(* x (+ y (+ z (* -1 (/ z x)))))
(* x (+ y (+ z (* -1 (/ z x)))))
(* x (+ y (+ z (* -1 (/ z x)))))
(* x (+ y z))
(* x (+ y (+ z (* -1 (/ z x)))))
(* x (+ y (+ z (* -1 (/ z x)))))
(* x (+ y (+ z (* -1 (/ z x)))))
(* x z)
(* x (+ z (* -1 (/ z x))))
(* x (+ z (* -1 (/ z x))))
(* x (+ z (* -1 (/ z x))))
(* x z)
(* x z)
(* x z)
(* x z)
(* x (+ y z))
(* x (+ y (+ z (* -1 (/ z x)))))
(* x (+ y (+ z (* -1 (/ z x)))))
(* x (+ y (+ z (* -1 (/ z x)))))
(* x z)
(* x (+ z (* -1 (/ z x))))
(* x (+ z (* -1 (/ z x))))
(* x (+ z (* -1 (/ z x))))
(* x (+ y z))
(* x (+ y (+ z (* -1 (/ z x)))))
(* x (+ y (+ z (* -1 (/ z x)))))
(* x (+ y (+ z (* -1 (/ z x)))))
(* x y)
(* x y)
(* x y)
(* x y)
(* x z)
(* x (+ z (* -1 (/ z x))))
(* x (+ z (* -1 (/ z x))))
(* x (+ z (* -1 (/ z x))))
(* -1 (* x (+ (* -1 y) (* -1 z))))
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(* -1 (* x (+ (* -1 y) (* -1 z))))
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(* x z)
(* -1 (* x (+ (* -1 z) (/ z x))))
(* -1 (* x (+ (* -1 z) (/ z x))))
(* -1 (* x (+ (* -1 z) (/ z x))))
(* x z)
(* x z)
(* x z)
(* x z)
(* -1 (* x (+ (* -1 y) (* -1 z))))
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(* x z)
(* -1 (* x (+ (* -1 z) (/ z x))))
(* -1 (* x (+ (* -1 z) (/ z x))))
(* -1 (* x (+ (* -1 z) (/ z x))))
(* -1 (* x (+ (* -1 y) (* -1 z))))
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(* x y)
(* x y)
(* x y)
(* x y)
(* x z)
(* -1 (* x (+ (* -1 z) (/ z x))))
(* -1 (* x (+ (* -1 z) (/ z x))))
(* -1 (* x (+ (* -1 z) (/ z x))))
Outputs
(* x y)
(*.f64 y x)
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x y)
(*.f64 y x)
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* x z)
(*.f64 z x)
(* x z)
(*.f64 z x)
(* x z)
(*.f64 z x)
(* x z)
(*.f64 z x)
(* x y)
(*.f64 y x)
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* x y)
(*.f64 y x)
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* -1 z)
(neg.f64 z)
(* -1 z)
(neg.f64 z)
(* -1 z)
(neg.f64 z)
(* -1 z)
(neg.f64 z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- (+ x (/ (* x y) z)) 1))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* z (- (+ x (/ (* x y) z)) 1))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* z (- (+ x (/ (* x y) z)) 1))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- (+ x (/ (* x y) z)) 1))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* z (- (+ x (/ (* x y) z)) 1))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* z (- (+ x (/ (* x y) z)) 1))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* x z)
(*.f64 z x)
(* x z)
(*.f64 z x)
(* x z)
(*.f64 z x)
(* x z)
(*.f64 z x)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- (+ x (/ (* x y) z)) 1))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* z (- (+ x (/ (* x y) z)) 1))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* z (- (+ x (/ (* x y) z)) 1))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- (+ x (/ (* x y) z)) 1))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* z (- (+ x (/ (* x y) z)) 1))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* z (- (+ x (/ (* x y) z)) 1))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* -1 z)
(neg.f64 z)
(* -1 z)
(neg.f64 z)
(* -1 z)
(neg.f64 z)
(* -1 z)
(neg.f64 z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* x z)
(*.f64 z x)
(* x z)
(*.f64 z x)
(* x z)
(*.f64 z x)
(* x z)
(*.f64 z x)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* z (+ 1 (* -1 x))))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* -1 (* z (+ 1 (* -1 x))))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* -1 (* z (+ 1 (* -1 x))))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* -1 (* z (+ 1 (* -1 x))))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* -1 z)
(neg.f64 z)
(* -1 z)
(neg.f64 z)
(* -1 z)
(neg.f64 z)
(* -1 z)
(neg.f64 z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* 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 (- x 1)) y)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* y (+ x (/ (* z (- x 1)) y)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* y (+ x (/ (* z (- x 1)) y)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x y)
(*.f64 y x)
(* y (+ x (/ (* z (- x 1)) y)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* y (+ x (/ (* z (- x 1)) y)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* y (+ x (/ (* z (- x 1)) y)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x y)
(*.f64 y x)
(* y (+ x (/ (* z (- x 1)) y)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* y (+ x (/ (* z (- x 1)) y)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* y (+ x (/ (* z (- x 1)) y)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x y)
(*.f64 y x)
(* y (+ x (/ (* z (- x 1)) y)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* y (+ x (/ (* z (- x 1)) y)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* y (+ x (/ (* z (- x 1)) y)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* 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 (- x 1)) y)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x y)
(*.f64 y x)
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x y)
(*.f64 y x)
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x y)
(*.f64 y x)
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* -1 z)
(neg.f64 z)
(+ (* -1 z) (* x (+ y z)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* -1 z) (* x (+ y z)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* -1 z) (* x (+ y z)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 z)
(neg.f64 z)
(+ (* -1 z) (* x (+ y z)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* -1 z) (* x (+ y z)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* -1 z) (* x (+ y z)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 z)
(neg.f64 z)
(+ (* -1 z) (* x z))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(+ (* -1 z) (* x z))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(+ (* -1 z) (* x z))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* x z)
(*.f64 z x)
(* x z)
(*.f64 z x)
(* x z)
(*.f64 z x)
(* x z)
(*.f64 z x)
(* -1 z)
(neg.f64 z)
(+ (* -1 z) (* x (+ y z)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* -1 z) (* x (+ y z)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* -1 z) (* x (+ y z)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 z)
(neg.f64 z)
(- (* x z) z)
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(- (* x z) z)
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(- (* x z) z)
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* -1 z)
(neg.f64 z)
(+ (* -1 z) (* x (+ y z)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* -1 z) (* x (+ y z)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* -1 z) (* x (+ y z)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* -1 z)
(neg.f64 z)
(+ (* -1 z) (* x z))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(+ (* -1 z) (* x z))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(+ (* -1 z) (* x z))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* x (+ y z))
(*.f64 (+.f64 z y) x)
(* x (+ y (+ z (* -1 (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x (+ y (+ z (* -1 (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x (+ y (+ z (* -1 (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x (+ y z))
(*.f64 (+.f64 z y) x)
(* x (+ y (+ z (* -1 (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x (+ y (+ z (* -1 (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x (+ y (+ z (* -1 (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x z)
(*.f64 z x)
(* x (+ z (* -1 (/ z x))))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* x (+ z (* -1 (/ z x))))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* x (+ z (* -1 (/ z x))))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* x z)
(*.f64 z x)
(* x z)
(*.f64 z x)
(* x z)
(*.f64 z x)
(* x z)
(*.f64 z x)
(* x (+ y z))
(*.f64 (+.f64 z y) x)
(* x (+ y (+ z (* -1 (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x (+ y (+ z (* -1 (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x (+ y (+ z (* -1 (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x z)
(*.f64 z x)
(* x (+ z (* -1 (/ z x))))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* x (+ z (* -1 (/ z x))))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* x (+ z (* -1 (/ z x))))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* x (+ y z))
(*.f64 (+.f64 z y) x)
(* x (+ y (+ z (* -1 (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x (+ y (+ z (* -1 (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x (+ y (+ z (* -1 (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x z)
(*.f64 z x)
(* x (+ z (* -1 (/ z x))))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* x (+ z (* -1 (/ z x))))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* x (+ z (* -1 (/ z x))))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* -1 (* x (+ (* -1 y) (* -1 z))))
(*.f64 (+.f64 z y) x)
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* x (+ (* -1 y) (* -1 z))))
(*.f64 (+.f64 z y) x)
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x z)
(*.f64 z x)
(* -1 (* x (+ (* -1 z) (/ z x))))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* -1 (* x (+ (* -1 z) (/ z x))))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* -1 (* x (+ (* -1 z) (/ z x))))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* x z)
(*.f64 z x)
(* x z)
(*.f64 z x)
(* x z)
(*.f64 z x)
(* x z)
(*.f64 z x)
(* -1 (* x (+ (* -1 y) (* -1 z))))
(*.f64 (+.f64 z y) x)
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x z)
(*.f64 z x)
(* -1 (* x (+ (* -1 z) (/ z x))))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* -1 (* x (+ (* -1 z) (/ z x))))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* -1 (* x (+ (* -1 z) (/ z x))))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* -1 (* x (+ (* -1 y) (* -1 z))))
(*.f64 (+.f64 z y) x)
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x z)
(*.f64 z x)
(* -1 (* x (+ (* -1 z) (/ z x))))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* -1 (* x (+ (* -1 z) (/ z x))))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* -1 (* x (+ (* -1 z) (/ z x))))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)

rewrite221.0ms (3.8%)

Memory
-3.3MiB live, 266.7MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01887
02387
18387
257887
3790287
0852783
Stop Event
iter limit
node limit
iter limit
Counts
10 → 248
Calls
Call 1
Inputs
#s(approx (+ (* x y) (* (- x 1) z)) z)
#s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x)))
#s(approx (* (- x 1) z) (*.f64 z x))
(*.f64 z x)
#s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z))
(-.f64 (*.f64 z x) z)
(+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z)))
(*.f64 x y)
#s(approx (* (- x 1) z) (neg.f64 z))
(neg.f64 z)
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>

eval111.0ms (1.9%)

Memory
-2.2MiB live, 199.4MiB allocated
Compiler

Compiled 7 961 to 864 computations (89.1% saved)

prune16.0ms (0.3%)

Memory
2.5MiB live, 50.5MiB allocated
Pruning

7 alts after pruning (1 fresh and 6 done)

PrunedKeptTotal
New5631564
Fresh000
Picked134
Done134
Total5657572
Accuracy
100.0%
Counts
572 → 7
Alt Table
Click to see full alt table
StatusAccuracyProgram
81.7%
(fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z)))
58.0%
#s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z))
62.1%
#s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x))
44.3%
#s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x))
39.3%
#s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z))
21.2%
#s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x)))
2.7%
#s(approx (+ (* x y) (* (- x 1) z)) z)
Compiler

Compiled 32 to 38 computations (-18.8% saved)

simplify104.0ms (1.8%)

Memory
-17.2MiB live, 20.4MiB allocated
Algorithm
egg-herbie
Localize:

Found 3 expressions of interest:

NewMetricScoreProgram
cost-diff0
(neg.f64 z)
cost-diff0
#s(approx (* (- x 1) z) (neg.f64 z))
cost-diff0
(fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0924
01224
12224
23024
34224
45024
56524
610324
716224
824124
930024
1036524
1140624
1242324
1344324
1446524
1548124
1648424
048424
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z)))
y
x
#s(approx (* (- x 1) z) (neg.f64 z))
(neg.f64 z)
z
Outputs
(fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z)))
(fma.f64 x y #s(approx (* (- x 1) z) (neg.f64 z)))
y
x
#s(approx (* (- x 1) z) (neg.f64 z))
(neg.f64 z)
z

localize22.0ms (0.4%)

Memory
12.5MiB live, 51.3MiB allocated
Localize:

Found 3 expressions of interest:

NewMetricScoreProgram
accuracy0
(neg.f64 z)
accuracy1.4999834856333614
(fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z)))
accuracy27.56493979387876
#s(approx (* (- x 1) z) (neg.f64 z))
Samples
16.0ms256×0valid
Compiler

Compiled 21 to 11 computations (47.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 9.0ms
ival-mult: 5.0ms (53.8% of total)
ival-neg: 2.0ms (21.5% of total)
ival-sub: 1.0ms (10.8% of total)
ival-add: 1.0ms (10.8% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series5.0ms (0.1%)

Memory
10.6MiB live, 10.6MiB allocated
Counts
3 → 72
Calls
Call 1
Inputs
#s(alt (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) (patch (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())
#s(alt #s(approx (* (- x 1) z) (neg.f64 z)) (patch #s(approx (* (- x 1) z) (neg.f64 z)) #<representation binary64>) () ())
#s(alt (neg.f64 z) (patch (neg.f64 z) #<representation binary64>) () ())
Outputs
#s(alt (* x y) (taylor 0 z) (#s(alt (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) (patch (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 z) (#s(alt (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) (patch (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 z) (#s(alt (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) (patch (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 z) (#s(alt (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) (patch (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor 0 z) (#s(alt #s(approx (* (- x 1) z) (neg.f64 z)) (patch #s(approx (* (- x 1) z) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor 0 z) (#s(alt #s(approx (* (- x 1) z) (neg.f64 z)) (patch #s(approx (* (- x 1) z) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor 0 z) (#s(alt #s(approx (* (- x 1) z) (neg.f64 z)) (patch #s(approx (* (- x 1) z) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor 0 z) (#s(alt #s(approx (* (- x 1) z) (neg.f64 z)) (patch #s(approx (* (- x 1) z) (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 (* -1 z) (taylor 0 z) (#s(alt (neg.f64 z) (patch (neg.f64 z) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor inf z) (#s(alt (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) (patch (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* z (- (+ x (/ (* x y) z)) 1)) (taylor inf z) (#s(alt (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) (patch (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* z (- (+ x (/ (* x y) z)) 1)) (taylor inf z) (#s(alt (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) (patch (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* z (- (+ x (/ (* x y) z)) 1)) (taylor inf z) (#s(alt (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) (patch (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor inf z) (#s(alt #s(approx (* (- x 1) z) (neg.f64 z)) (patch #s(approx (* (- x 1) z) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor inf z) (#s(alt #s(approx (* (- x 1) z) (neg.f64 z)) (patch #s(approx (* (- x 1) z) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor inf z) (#s(alt #s(approx (* (- x 1) z) (neg.f64 z)) (patch #s(approx (* (- x 1) z) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor inf z) (#s(alt #s(approx (* (- x 1) z) (neg.f64 z)) (patch #s(approx (* (- x 1) z) (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 z) (taylor inf z) (#s(alt (neg.f64 z) (patch (neg.f64 z) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor -inf z) (#s(alt (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) (patch (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z))))) (taylor -inf z) (#s(alt (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) (patch (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z))))) (taylor -inf z) (#s(alt (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) (patch (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z))))) (taylor -inf z) (#s(alt (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) (patch (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor -inf z) (#s(alt #s(approx (* (- x 1) z) (neg.f64 z)) (patch #s(approx (* (- x 1) z) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor -inf z) (#s(alt #s(approx (* (- x 1) z) (neg.f64 z)) (patch #s(approx (* (- x 1) z) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor -inf z) (#s(alt #s(approx (* (- x 1) z) (neg.f64 z)) (patch #s(approx (* (- x 1) z) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor -inf z) (#s(alt #s(approx (* (- x 1) z) (neg.f64 z)) (patch #s(approx (* (- x 1) z) (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 z) (taylor -inf z) (#s(alt (neg.f64 z) (patch (neg.f64 z) #<representation binary64>) () ())) ())
#s(alt (* z (- x 1)) (taylor 0 y) (#s(alt (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) (patch (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 y) (#s(alt (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) (patch (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 y) (#s(alt (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) (patch (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (+ (* x y) (* z (- x 1))) (taylor 0 y) (#s(alt (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) (patch (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf y) (#s(alt (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) (patch (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (/ (* z (- x 1)) y))) (taylor inf y) (#s(alt (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) (patch (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (/ (* z (- x 1)) y))) (taylor inf y) (#s(alt (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) (patch (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (/ (* z (- x 1)) y))) (taylor inf y) (#s(alt (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) (patch (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf y) (#s(alt (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) (patch (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y))))) (taylor -inf y) (#s(alt (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) (patch (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y))))) (taylor -inf y) (#s(alt (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) (patch (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y))))) (taylor -inf y) (#s(alt (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) (patch (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* -1 z) (taylor 0 x) (#s(alt (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) (patch (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 z) (* x (+ y z))) (taylor 0 x) (#s(alt (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) (patch (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 z) (* x (+ y z))) (taylor 0 x) (#s(alt (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) (patch (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 z) (* x (+ y z))) (taylor 0 x) (#s(alt (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) (patch (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* -1 z) (taylor 0 x) (#s(alt #s(approx (* (- x 1) z) (neg.f64 z)) (patch #s(approx (* (- x 1) z) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 z) (* x z)) (taylor 0 x) (#s(alt #s(approx (* (- x 1) z) (neg.f64 z)) (patch #s(approx (* (- x 1) z) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 z) (* x z)) (taylor 0 x) (#s(alt #s(approx (* (- x 1) z) (neg.f64 z)) (patch #s(approx (* (- x 1) z) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 z) (* x z)) (taylor 0 x) (#s(alt #s(approx (* (- x 1) z) (neg.f64 z)) (patch #s(approx (* (- x 1) z) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* x (+ y z)) (taylor inf x) (#s(alt (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) (patch (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (+ z (* -1 (/ z x))))) (taylor inf x) (#s(alt (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) (patch (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (+ z (* -1 (/ z x))))) (taylor inf x) (#s(alt (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) (patch (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (+ z (* -1 (/ z x))))) (taylor inf x) (#s(alt (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) (patch (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* x z) (taylor inf x) (#s(alt #s(approx (* (- x 1) z) (neg.f64 z)) (patch #s(approx (* (- x 1) z) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* x (+ z (* -1 (/ z x)))) (taylor inf x) (#s(alt #s(approx (* (- x 1) z) (neg.f64 z)) (patch #s(approx (* (- x 1) z) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* x (+ z (* -1 (/ z x)))) (taylor inf x) (#s(alt #s(approx (* (- x 1) z) (neg.f64 z)) (patch #s(approx (* (- x 1) z) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* x (+ z (* -1 (/ z x)))) (taylor inf x) (#s(alt #s(approx (* (- x 1) z) (neg.f64 z)) (patch #s(approx (* (- x 1) z) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (* -1 z)))) (taylor -inf x) (#s(alt (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) (patch (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x))))) (taylor -inf x) (#s(alt (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) (patch (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x))))) (taylor -inf x) (#s(alt (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) (patch (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x))))) (taylor -inf x) (#s(alt (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) (patch (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) #<representation binary64>) () ())) ())
#s(alt (* x z) (taylor -inf x) (#s(alt #s(approx (* (- x 1) z) (neg.f64 z)) (patch #s(approx (* (- x 1) z) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 z) (/ z x)))) (taylor -inf x) (#s(alt #s(approx (* (- x 1) z) (neg.f64 z)) (patch #s(approx (* (- x 1) z) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 z) (/ z x)))) (taylor -inf x) (#s(alt #s(approx (* (- x 1) z) (neg.f64 z)) (patch #s(approx (* (- x 1) z) (neg.f64 z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 z) (/ z x)))) (taylor -inf x) (#s(alt #s(approx (* (- x 1) z) (neg.f64 z)) (patch #s(approx (* (- x 1) z) (neg.f64 z)) #<representation binary64>) () ())) ())
Calls

9 calls:

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

simplify99.0ms (1.7%)

Memory
-12.3MiB live, 140.2MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
048416
1166362
2488362
31252362
43738362
56953362
08117362
Stop Event
iter limit
node limit
Counts
72 → 72
Calls
Call 1
Inputs
(* x y)
(+ (* x y) (* z (- x 1)))
(+ (* x y) (* z (- x 1)))
(+ (* x y) (* z (- x 1)))
(* z (- x 1))
(* z (- x 1))
(* z (- x 1))
(* z (- x 1))
(* -1 z)
(* -1 z)
(* -1 z)
(* -1 z)
(* z (- x 1))
(* z (- (+ x (/ (* x y) z)) 1))
(* z (- (+ x (/ (* x y) z)) 1))
(* z (- (+ x (/ (* x y) z)) 1))
(* z (- x 1))
(* z (- x 1))
(* z (- x 1))
(* z (- x 1))
(* -1 z)
(* -1 z)
(* -1 z)
(* -1 z)
(* z (- x 1))
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(* z (- x 1))
(* z (- x 1))
(* z (- x 1))
(* z (- x 1))
(* -1 z)
(* -1 z)
(* -1 z)
(* -1 z)
(* z (- x 1))
(+ (* x y) (* z (- x 1)))
(+ (* x y) (* z (- x 1)))
(+ (* x y) (* z (- x 1)))
(* x y)
(* y (+ x (/ (* z (- x 1)) y)))
(* y (+ x (/ (* z (- x 1)) y)))
(* y (+ x (/ (* z (- x 1)) y)))
(* x y)
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(* -1 z)
(+ (* -1 z) (* x (+ y z)))
(+ (* -1 z) (* x (+ y z)))
(+ (* -1 z) (* x (+ y z)))
(* -1 z)
(+ (* -1 z) (* x z))
(+ (* -1 z) (* x z))
(+ (* -1 z) (* x z))
(* x (+ y z))
(* x (+ y (+ z (* -1 (/ z x)))))
(* x (+ y (+ z (* -1 (/ z x)))))
(* x (+ y (+ z (* -1 (/ z x)))))
(* x z)
(* x (+ z (* -1 (/ z x))))
(* x (+ z (* -1 (/ z x))))
(* x (+ z (* -1 (/ z x))))
(* -1 (* x (+ (* -1 y) (* -1 z))))
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(* x z)
(* -1 (* x (+ (* -1 z) (/ z x))))
(* -1 (* x (+ (* -1 z) (/ z x))))
(* -1 (* x (+ (* -1 z) (/ z x))))
Outputs
(* x y)
(*.f64 y x)
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* -1 z)
(neg.f64 z)
(* -1 z)
(neg.f64 z)
(* -1 z)
(neg.f64 z)
(* -1 z)
(neg.f64 z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- (+ x (/ (* x y) z)) 1))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* z (- (+ x (/ (* x y) z)) 1))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* z (- (+ x (/ (* x y) z)) 1))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* -1 z)
(neg.f64 z)
(* -1 z)
(neg.f64 z)
(* -1 z)
(neg.f64 z)
(* -1 z)
(neg.f64 z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* z (+ (* -1 (- x 1)) (* -1 (/ (* x y) z)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* -1 z)
(neg.f64 z)
(* -1 z)
(neg.f64 z)
(* -1 z)
(neg.f64 z)
(* -1 z)
(neg.f64 z)
(* z (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* x y) (* z (- x 1)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x y)
(*.f64 y x)
(* y (+ x (/ (* z (- x 1)) y)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* y (+ x (/ (* z (- x 1)) y)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* y (+ x (/ (* z (- x 1)) y)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x y)
(*.f64 y x)
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- x 1)) y)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 z)
(neg.f64 z)
(+ (* -1 z) (* x (+ y z)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* -1 z) (* x (+ y z)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(+ (* -1 z) (* x (+ y z)))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 z)
(neg.f64 z)
(+ (* -1 z) (* x z))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(+ (* -1 z) (* x z))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(+ (* -1 z) (* x z))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* x (+ y z))
(*.f64 (+.f64 z y) x)
(* x (+ y (+ z (* -1 (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x (+ y (+ z (* -1 (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x (+ y (+ z (* -1 (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x z)
(*.f64 z x)
(* x (+ z (* -1 (/ z x))))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* x (+ z (* -1 (/ z x))))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* x (+ z (* -1 (/ z x))))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* -1 (* x (+ (* -1 y) (* -1 z))))
(*.f64 (+.f64 z y) x)
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* -1 (* x (+ (* -1 y) (+ (* -1 z) (/ z x)))))
(fma.f64 (+.f64 z y) x (neg.f64 z))
(* x z)
(*.f64 z x)
(* -1 (* x (+ (* -1 z) (/ z x))))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* -1 (* x (+ (* -1 z) (/ z x))))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)
(* -1 (* x (+ (* -1 z) (/ z x))))
(*.f64 (-.f64 x #s(literal 1 binary64)) z)

rewrite230.0ms (3.9%)

Memory
7.1MiB live, 258.9MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0921
01221
14721
230021
3288221
0871021
Stop Event
iter limit
node limit
iter limit
Counts
3 → 164
Calls
Call 1
Inputs
(fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z)))
#s(approx (* (- x 1) z) (neg.f64 z))
(neg.f64 z)
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>

eval29.0ms (0.5%)

Memory
-4.1MiB live, 71.3MiB allocated
Compiler

Compiled 5 449 to 541 computations (90.1% saved)

prune25.0ms (0.4%)

Memory
-17.1MiB live, 21.9MiB allocated
Pruning

7 alts after pruning (0 fresh and 7 done)

PrunedKeptTotal
New2360236
Fresh000
Picked011
Done066
Total2367243
Accuracy
100.0%
Counts
243 → 7
Alt Table
Click to see full alt table
StatusAccuracyProgram
81.7%
(fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z)))
58.0%
#s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z))
62.1%
#s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x))
44.3%
#s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x))
39.3%
#s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z))
21.2%
#s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x)))
2.7%
#s(approx (+ (* x y) (* (- x 1) z)) z)
Compiler

Compiled 94 to 65 computations (30.9% saved)

regimes17.0ms (0.3%)

Memory
30.3MiB live, 30.3MiB allocated
Counts
11 → 1
Calls
Call 1
Inputs
#s(approx (+ (* x y) (* (- x 1) z)) z)
#s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z))
#s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x)))
#s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x))
#s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x))
#s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z))
#s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z))
(fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z)))
(+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z)))
#s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z)))
(+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z))
Outputs
#s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z)))
Calls

4 calls:

4.0ms
(+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z))
4.0ms
y
4.0ms
z
4.0ms
x
Results
AccuracySegmentsBranch
100.0%1x
100.0%1y
100.0%1z
100.0%1(+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z))
Compiler

Compiled 12 to 17 computations (-41.7% saved)

regimes29.0ms (0.5%)

Memory
-12.1MiB live, 33.1MiB allocated
Counts
9 → 3
Calls
Call 1
Inputs
#s(approx (+ (* x y) (* (- x 1) z)) z)
#s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z))
#s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x)))
#s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x))
#s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x))
#s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z))
#s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z))
(fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z)))
(+.f64 (*.f64 x y) #s(approx (* (- x 1) z) (neg.f64 z)))
Outputs
#s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x))
(fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z)))
#s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x))
Calls

4 calls:

18.0ms
z
4.0ms
y
4.0ms
(+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z))
4.0ms
x
Results
AccuracySegmentsBranch
99.2%3x
92.8%3y
88.7%3z
89.2%3(+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z))
Compiler

Compiled 12 to 17 computations (-41.7% saved)

regimes16.0ms (0.3%)

Memory
-9.2MiB live, 28.4MiB allocated
Counts
7 → 3
Calls
Call 1
Inputs
#s(approx (+ (* x y) (* (- x 1) z)) z)
#s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z))
#s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x)))
#s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x))
#s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x))
#s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z))
#s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z))
Outputs
#s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x))
#s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z))
#s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x))
Calls

4 calls:

6.0ms
y
3.0ms
x
3.0ms
(+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z))
3.0ms
z
Results
AccuracySegmentsBranch
77.7%3z
74.3%3(+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z))
83.6%3y
83.2%3x
Compiler

Compiled 12 to 17 computations (-41.7% saved)

regimes3.0ms (0.1%)

Memory
7.0MiB live, 7.0MiB allocated
Counts
6 → 3
Calls
Call 1
Inputs
#s(approx (+ (* x y) (* (- x 1) z)) z)
#s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z))
#s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x)))
#s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x))
#s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x))
#s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z))
Outputs
#s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x))
#s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z))
#s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x))
Calls

1 calls:

3.0ms
y
Results
AccuracySegmentsBranch
83.6%3y
Compiler

Compiled 1 to 3 computations (-200% saved)

regimes5.0ms (0.1%)

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

2 calls:

2.0ms
y
2.0ms
x
Results
AccuracySegmentsBranch
83.1%3x
69.6%3y
Compiler

Compiled 2 to 6 computations (-200% saved)

regimes11.0ms (0.2%)

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

4 calls:

4.0ms
z
2.0ms
x
2.0ms
(+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z))
2.0ms
y
Results
AccuracySegmentsBranch
65.6%3y
56.3%3(+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z))
60.6%4z
65.3%3x
Compiler

Compiled 12 to 17 computations (-41.7% saved)

regimes6.0ms (0.1%)

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

3 calls:

2.0ms
z
2.0ms
y
2.0ms
x
Results
AccuracySegmentsBranch
41.2%2z
57.3%3x
39.3%1y
Compiler

Compiled 3 to 9 computations (-200% saved)

regimes8.0ms (0.1%)

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

3 calls:

4.0ms
(+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z))
2.0ms
x
2.0ms
z
Results
AccuracySegmentsBranch
39.3%1z
39.3%1(+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z))
39.3%1x
Compiler

Compiled 11 to 14 computations (-27.3% saved)

regimes6.0ms (0.1%)

Memory
17.1MiB live, 17.1MiB allocated
Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

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

4 calls:

1.0ms
x
1.0ms
(+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z))
1.0ms
z
1.0ms
y
Results
AccuracySegmentsBranch
2.7%1z
2.7%1y
2.7%1(+.f64 (*.f64 x y) (*.f64 (-.f64 x #s(literal 1 binary64)) z))
2.7%1x
Compiler

Compiled 12 to 17 computations (-41.7% saved)

bsearch27.0ms (0.5%)

Memory
-24.1MiB live, 61.3MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
11.0ms
9.352456685932734e-14
5.261957867461079e-11
13.0ms
-16556604103.087551
-280856.68143277644
Samples
12.0ms256×0valid
Compiler

Compiled 204 to 238 computations (-16.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 6.0ms
ival-mult: 4.0ms (65.2% of total)
ival-sub: 1.0ms (16.3% of total)
ival-add: 1.0ms (16.3% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

bsearch88.0ms (1.5%)

Memory
7.5MiB live, 45.5MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
78.0ms
1.4724039696085495e+59
6.676329717243829e+63
8.0ms
-6.073086476253972e+82
-6.542469339260391e+81
Samples
78.0ms224×0valid
Compiler

Compiled 180 to 210 computations (-16.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 72.0ms
ival-mult: 70.0ms (96.7% of total)
ival-sub: 1.0ms (1.4% of total)
ival-add: 1.0ms (1.4% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

bsearch2.0ms (0%)

Memory
3.9MiB live, 3.9MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
1.0ms
1.4724039696085495e+59
6.676329717243829e+63
1.0ms
-6.073086476253972e+82
-6.542469339260391e+81
Compiler

Compiled 180 to 224 computations (-24.4% saved)

bsearch24.0ms (0.4%)

Memory
3.9MiB live, 41.9MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
12.0ms
9.352456685932734e-14
5.261957867461079e-11
9.0ms
-2.843568673520346e-50
-3.1212262717291513e-52
Samples
13.0ms224×0valid
Compiler

Compiled 147 to 209 computations (-42.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 5.0ms
ival-mult: 3.0ms (55.4% of total)
ival-sub: 1.0ms (18.5% of total)
ival-add: 1.0ms (18.5% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

bsearch2.0ms (0%)

Memory
3.6MiB live, 3.6MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
1.0ms
1.4724039696085495e+59
6.676329717243829e+63
1.0ms
-6.073086476253972e+82
-6.542469339260391e+81
Compiler

Compiled 110 to 182 computations (-65.5% saved)

bsearch174.0ms (3%)

Memory
-8.2MiB live, 31.9MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
171.0ms
5.261957867461079e-11
3.817357323275356
1.0ms
-16556604103.087551
-280856.68143277644
Samples
7.0ms160×0valid
Compiler

Compiled 156 to 248 computations (-59% saved)

Precisions
Click to see histograms. Total time spent on operations: 4.0ms
ival-mult: 2.0ms (52% of total)
ival-sub: 1.0ms (26% of total)
ival-add: 1.0ms (26% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

simplify36.0ms (0.6%)

Memory
17.3MiB live, 55.8MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
053349
167349
273349
379349
486349
597349
Stop Event
saturated
Calls
Call 1
Inputs
#s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z)))
(if (<=.f64 x #s(literal -290000 binary64)) #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) (if (<=.f64 x #s(literal 2011652563838743/38685626227668133590597632 binary64)) (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x))))
(if (<=.f64 y #s(literal -18000000000000000689319671493127823313199612156473955710481876045197379757957709824 binary64)) #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) (if (<=.f64 y #s(literal 319999999999999982019823679181236186105508941712422302908416 binary64)) #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x))))
(if (<=.f64 y #s(literal -18000000000000000689319671493127823313199612156473955710481876045197379757957709824 binary64)) #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) (if (<=.f64 y #s(literal 319999999999999982019823679181236186105508941712422302908416 binary64)) #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x))))
(if (<=.f64 x #s(literal -4886490333421053/842498333348457493583344221469363458551160763204392890034487820288 binary64)) #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) (if (<=.f64 x #s(literal 4951760157141521/9903520314283042199192993792 binary64)) #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x))))
(if (<=.f64 y #s(literal -18000000000000000689319671493127823313199612156473955710481876045197379757957709824 binary64)) #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) (if (<=.f64 y #s(literal 319999999999999982019823679181236186105508941712422302908416 binary64)) #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x))))
(if (<=.f64 x #s(literal -290000 binary64)) #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) (if (<=.f64 x #s(literal 1 binary64)) #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x)))))
#s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z))
#s(approx (+ (* x y) (* (- x 1) z)) z)
Outputs
#s(approx (+ (* x y) (* (- x 1) z)) (fma.f64 (+.f64 z y) x (neg.f64 z)))
(if (<=.f64 x #s(literal -290000 binary64)) #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) (if (<=.f64 x #s(literal 2011652563838743/38685626227668133590597632 binary64)) (fma.f64 y x #s(approx (* (- x 1) z) (neg.f64 z))) #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x))))
(if (<=.f64 y #s(literal -18000000000000000689319671493127823313199612156473955710481876045197379757957709824 binary64)) #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) (if (<=.f64 y #s(literal 319999999999999982019823679181236186105508941712422302908416 binary64)) #s(approx (+ (* x y) (* (- x 1) z)) (-.f64 (*.f64 z x) z)) #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x))))
(if (<=.f64 y #s(literal -18000000000000000689319671493127823313199612156473955710481876045197379757957709824 binary64)) #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) (if (<=.f64 y #s(literal 319999999999999982019823679181236186105508941712422302908416 binary64)) #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (-.f64 x #s(literal 1 binary64)) z)) #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x))))
(if (<=.f64 x #s(literal -4886490333421053/842498333348457493583344221469363458551160763204392890034487820288 binary64)) #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x)) (if (<=.f64 x #s(literal 4951760157141521/9903520314283042199192993792 binary64)) #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 (+.f64 z y) x))))
(if (<=.f64 y #s(literal -18000000000000000689319671493127823313199612156473955710481876045197379757957709824 binary64)) #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x)) (if (<=.f64 y #s(literal 319999999999999982019823679181236186105508941712422302908416 binary64)) #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) #s(approx (+ (* x y) (* (- x 1) z)) (*.f64 y x))))
(if (<=.f64 x #s(literal -290000 binary64)) #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x))) (if (<=.f64 x #s(literal 1 binary64)) #s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z)) #s(approx (+ (* x y) (* (- x 1) z)) #s(approx (* (- x 1) z) (*.f64 z x)))))
#s(approx (+ (* x y) (* (- x 1) z)) (neg.f64 z))
#s(approx (+ (* x y) (* (- x 1) z)) z)

soundness1.4s (23.7%)

Memory
-18.2MiB live, 591.5MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
054494
1180440
2532440
31339440
44403440
08080440
01002141
13461817
210171817
325591817
452781817
570951817
080831817
020100
027100
190100
263881
0919879
01887
02387
18387
257887
3790287
0852783
Stop Event
done
iter limit
node limit
iter limit
iter limit
node limit
iter limit
iter limit
node limit
iter limit
node limit
Compiler

Compiled 237 to 146 computations (38.4% saved)

preprocess254.0ms (4.4%)

Memory
-4.4MiB live, 112.5MiB allocated
Compiler

Compiled 326 to 114 computations (65% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...