Main:bigenough2 from A

Time bar (total: 4.2s)

start0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

analyze0.0ms (0%)

Memory
0.4MiB live, 0.4MiB 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 9 to 8 computations (11.1% saved)

sample618.0ms (14.5%)

Memory
18.3MiB live, 887.3MiB allocated
Samples
365.0ms8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 158.0ms
ival-add: 86.0ms (54.6% of total)
ival-mult: 62.0ms (39.4% of total)
ival-true: 6.0ms (3.8% of total)
ival-assert: 3.0ms (1.9% of total)
Bogosity

explain106.0ms (2.5%)

Memory
12.0MiB live, 88.3MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
00-0-(+.f64 z x)
00-0-y
00-0-(*.f64 y (+.f64 z x))
00-0-(+.f64 x (*.f64 y (+.f64 z x)))
00-0-z
00-0-x
Confusion
Predicted +Predicted -
+00
-0256
Precision
0/0
Recall
0/0
Confusion?
Predicted +Predicted MaybePredicted -
+000
-00256
Precision?
0/0
Recall?
0/0
Freqs
test
numberfreq
0256
Total Confusion?
Predicted +Predicted MaybePredicted -
+000
-001
Precision?
0/0
Recall?
0/0
Samples
43.0ms512×0valid
Compiler

Compiled 65 to 28 computations (56.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 30.0ms
ival-add: 26.0ms (87.2% of total)
ival-mult: 4.0ms (13.4% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

preprocess56.0ms (1.3%)

Memory
-26.2MiB live, 19.7MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02770
19463
228663
372263
4175363
5244363
6258063
7258063
067
097
1187
2297
3387
4427
5487
6487
7617
8617
9737
10757
11797
0796
Stop Event
iter limit
saturated
iter limit
saturated
Calls
Call 1
Inputs
(+.f64 x (*.f64 y (+.f64 z x)))
Outputs
(+.f64 x (*.f64 y (+.f64 z x)))
(fma.f64 (+.f64 z x) y x)
Compiler

Compiled 7 to 6 computations (14.3% saved)

eval0.0ms (0%)

Memory
0.3MiB live, 0.3MiB allocated
Compiler

Compiled 0 to 3 computations (-∞% saved)

prune0.0ms (0%)

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

Compiled 7 to 6 computations (14.3% saved)

simplify5.0ms (0.1%)

Memory
4.2MiB live, 4.2MiB allocated
Algorithm
egg-herbie
Localize:

Found 3 expressions of interest:

NewMetricScoreProgram
cost-diff0
(+.f64 z x)
cost-diff0
(*.f64 y (+.f64 z x))
cost-diff128
(+.f64 x (*.f64 y (+.f64 z x)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0618
0918
11818
22918
33818
44218
54818
64818
76118
86118
97318
107518
117918
07917
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(+.f64 x (*.f64 y (+.f64 z x)))
x
(*.f64 y (+.f64 z x))
y
(+.f64 z x)
z
Outputs
(+.f64 x (*.f64 y (+.f64 z x)))
(fma.f64 (+.f64 z x) y x)
x
(*.f64 y (+.f64 z x))
(*.f64 (+.f64 z x) y)
y
(+.f64 z x)
z

localize16.0ms (0.4%)

Memory
18.5MiB live, 18.5MiB allocated
Localize:

Found 3 expressions of interest:

NewMetricScoreProgram
accuracy0
(+.f64 z x)
accuracy0
(*.f64 y (+.f64 z x))
accuracy0.0078125
(+.f64 x (*.f64 y (+.f64 z x)))
Samples
11.0ms256×0valid
Compiler

Compiled 38 to 14 computations (63.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 5.0ms
ival-add: 3.0ms (63.8% of total)
ival-mult: 2.0ms (42.5% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series179.0ms (4.2%)

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

9 calls:

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

simplify212.0ms (5%)

Memory
18.5MiB live, 94.4MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
070452
1249452
2749452
32187452
44758452
56511452
67644452
08186422
Stop Event
iter limit
node limit
Counts
96 → 89
Calls
Call 1
Inputs
(+ x (* x y))
(+ x (+ (* x y) (* y z)))
(+ x (+ (* x y) (* y z)))
(+ x (+ (* x y) (* y z)))
(* x y)
(+ (* x y) (* y z))
(+ (* x y) (* y z))
(+ (* x y) (* y z))
x
(+ x z)
(+ x z)
(+ x z)
(* y z)
(* z (+ y (+ (/ x z) (/ (* x y) z))))
(* z (+ y (+ (/ x z) (/ (* x y) z))))
(* z (+ y (+ (/ x z) (/ (* x y) z))))
(* y z)
(* z (+ y (/ (* x y) z)))
(* z (+ y (/ (* x y) z)))
(* z (+ y (/ (* x y) z)))
z
(* z (+ 1 (/ x z)))
(* z (+ 1 (/ x z)))
(* z (+ 1 (/ x z)))
(* y z)
(* -1 (* z (+ (* -1 y) (* -1 (/ (+ x (* x y)) z)))))
(* -1 (* z (+ (* -1 y) (* -1 (/ (+ x (* x y)) z)))))
(* -1 (* z (+ (* -1 y) (* -1 (/ (+ x (* x y)) z)))))
(* y z)
(* -1 (* z (+ (* -1 y) (* -1 (/ (* x y) z)))))
(* -1 (* z (+ (* -1 y) (* -1 (/ (* x y) z)))))
(* -1 (* z (+ (* -1 y) (* -1 (/ (* x y) z)))))
z
(* -1 (* z (- (* -1 (/ x z)) 1)))
(* -1 (* z (- (* -1 (/ x z)) 1)))
(* -1 (* z (- (* -1 (/ x z)) 1)))
x
(+ x (* y (+ x z)))
(+ x (* y (+ x z)))
(+ x (* y (+ x z)))
(* y (+ x z))
(* y (+ x z))
(* y (+ x z))
(* y (+ x z))
(* y (+ x z))
(* y (+ x (+ z (/ x y))))
(* y (+ x (+ z (/ x y))))
(* y (+ x (+ z (/ x y))))
(* y (+ x z))
(* y (+ x z))
(* y (+ x z))
(* y (+ x z))
(* y (+ x z))
(* -1 (* y (+ (* -1 (+ x z)) (* -1 (/ x y)))))
(* -1 (* y (+ (* -1 (+ x z)) (* -1 (/ x y)))))
(* -1 (* y (+ (* -1 (+ x z)) (* -1 (/ x y)))))
(* y (+ x z))
(* y (+ x z))
(* y (+ x z))
(* y (+ x z))
(* y z)
(+ (* x (+ 1 y)) (* y z))
(+ (* x (+ 1 y)) (* y z))
(+ (* x (+ 1 y)) (* y z))
(* y z)
(+ (* x y) (* y z))
(+ (* x y) (* y z))
(+ (* x y) (* y z))
z
(+ x z)
(+ x z)
(+ x z)
(* x (+ 1 y))
(* x (+ 1 (+ y (/ (* y z) x))))
(* x (+ 1 (+ y (/ (* y z) x))))
(* x (+ 1 (+ y (/ (* y z) x))))
(* x y)
(* x (+ y (/ (* y z) x)))
(* x (+ y (/ (* y z) x)))
(* x (+ y (/ (* y z) x)))
x
(* x (+ 1 (/ z x)))
(* x (+ 1 (/ z x)))
(* x (+ 1 (/ z x)))
(* -1 (* x (- (* -1 y) 1)))
(* -1 (* x (- (+ (* -1 y) (* -1 (/ (* y z) x))) 1)))
(* -1 (* x (- (+ (* -1 y) (* -1 (/ (* y z) x))) 1)))
(* -1 (* x (- (+ (* -1 y) (* -1 (/ (* y z) x))) 1)))
(* x y)
(* -1 (* x (+ (* -1 y) (* -1 (/ (* y z) x)))))
(* -1 (* x (+ (* -1 y) (* -1 (/ (* y z) x)))))
(* -1 (* x (+ (* -1 y) (* -1 (/ (* y z) x)))))
x
(* -1 (* x (- (* -1 (/ z x)) 1)))
(* -1 (* x (- (* -1 (/ z x)) 1)))
(* -1 (* x (- (* -1 (/ z x)) 1)))
Outputs
(+ x (* x y))
(fma.f64 y x x)
(+ x (+ (* x y) (* y z)))
(fma.f64 (+.f64 z x) y x)
(+ x (+ (* x y) (* y z)))
(fma.f64 (+.f64 z x) y x)
(+ x (+ (* x y) (* y z)))
(fma.f64 (+.f64 z x) y x)
(* x y)
(*.f64 y x)
(+ (* x y) (* y z))
(*.f64 (+.f64 z x) y)
(+ (* x y) (* y z))
(*.f64 (+.f64 z x) y)
(+ (* x y) (* y z))
(*.f64 (+.f64 z x) y)
x
(+ x z)
(+.f64 z x)
(+ x z)
(+.f64 z x)
(+ x z)
(+.f64 z x)
(* y z)
(*.f64 z y)
(* z (+ y (+ (/ x z) (/ (* x y) z))))
(fma.f64 (+.f64 z x) y x)
(* z (+ y (+ (/ x z) (/ (* x y) z))))
(fma.f64 (+.f64 z x) y x)
(* z (+ y (+ (/ x z) (/ (* x y) z))))
(fma.f64 (+.f64 z x) y x)
(* y z)
(*.f64 z y)
(* z (+ y (/ (* x y) z)))
(*.f64 (+.f64 z x) y)
(* z (+ y (/ (* x y) z)))
(*.f64 (+.f64 z x) y)
(* z (+ y (/ (* x y) z)))
(*.f64 (+.f64 z x) y)
z
(* z (+ 1 (/ x z)))
(+.f64 z x)
(* z (+ 1 (/ x z)))
(+.f64 z x)
(* z (+ 1 (/ x z)))
(+.f64 z x)
(* y z)
(*.f64 z y)
(* -1 (* z (+ (* -1 y) (* -1 (/ (+ x (* x y)) z)))))
(fma.f64 (+.f64 z x) y x)
(* -1 (* z (+ (* -1 y) (* -1 (/ (+ x (* x y)) z)))))
(fma.f64 (+.f64 z x) y x)
(* -1 (* z (+ (* -1 y) (* -1 (/ (+ x (* x y)) z)))))
(fma.f64 (+.f64 z x) y x)
(* y z)
(*.f64 z y)
(* -1 (* z (+ (* -1 y) (* -1 (/ (* x y) z)))))
(*.f64 (+.f64 z x) y)
(* -1 (* z (+ (* -1 y) (* -1 (/ (* x y) z)))))
(*.f64 (+.f64 z x) y)
(* -1 (* z (+ (* -1 y) (* -1 (/ (* x y) z)))))
(*.f64 (+.f64 z x) y)
z
(* -1 (* z (- (* -1 (/ x z)) 1)))
(+.f64 z x)
(* -1 (* z (- (* -1 (/ x z)) 1)))
(+.f64 z x)
(* -1 (* z (- (* -1 (/ x z)) 1)))
(+.f64 z x)
x
(+ x (* y (+ x z)))
(fma.f64 (+.f64 z x) y x)
(+ x (* y (+ x z)))
(fma.f64 (+.f64 z x) y x)
(+ x (* y (+ x z)))
(fma.f64 (+.f64 z x) y x)
(* y (+ x z))
(*.f64 (+.f64 z x) y)
(* y (+ x z))
(*.f64 (+.f64 z x) y)
(* y (+ x z))
(*.f64 (+.f64 z x) y)
(* y (+ x z))
(*.f64 (+.f64 z x) y)
(* y (+ x z))
(*.f64 (+.f64 z x) y)
(* y (+ x (+ z (/ x y))))
(fma.f64 (+.f64 z x) y x)
(* y (+ x (+ z (/ x y))))
(fma.f64 (+.f64 z x) y x)
(* y (+ x (+ z (/ x y))))
(fma.f64 (+.f64 z x) y x)
(* y (+ x z))
(*.f64 (+.f64 z x) y)
(* y (+ x z))
(*.f64 (+.f64 z x) y)
(* y (+ x z))
(*.f64 (+.f64 z x) y)
(* y (+ x z))
(*.f64 (+.f64 z x) y)
(* y (+ x z))
(*.f64 (+.f64 z x) y)
(* -1 (* y (+ (* -1 (+ x z)) (* -1 (/ x y)))))
(fma.f64 (+.f64 z x) y x)
(* -1 (* y (+ (* -1 (+ x z)) (* -1 (/ x y)))))
(fma.f64 (+.f64 z x) y x)
(* -1 (* y (+ (* -1 (+ x z)) (* -1 (/ x y)))))
(fma.f64 (+.f64 z x) y x)
(* y (+ x z))
(*.f64 (+.f64 z x) y)
(* y (+ x z))
(*.f64 (+.f64 z x) y)
(* y (+ x z))
(*.f64 (+.f64 z x) y)
(* y (+ x z))
(*.f64 (+.f64 z x) y)
(* y z)
(*.f64 z y)
(+ (* x (+ 1 y)) (* y z))
(fma.f64 (+.f64 z x) y x)
(+ (* x (+ 1 y)) (* y z))
(fma.f64 (+.f64 z x) y x)
(+ (* x (+ 1 y)) (* y z))
(fma.f64 (+.f64 z x) y x)
(* y z)
(*.f64 z y)
(+ (* x y) (* y z))
(*.f64 (+.f64 z x) y)
(+ (* x y) (* y z))
(*.f64 (+.f64 z x) y)
(+ (* x y) (* y z))
(*.f64 (+.f64 z x) y)
z
(+ x z)
(+.f64 z x)
(+ x z)
(+.f64 z x)
(+ x z)
(+.f64 z x)
(* x (+ 1 y))
(fma.f64 y x x)
(* x (+ 1 (+ y (/ (* y z) x))))
(fma.f64 (+.f64 z x) y x)
(* x (+ 1 (+ y (/ (* y z) x))))
(fma.f64 (+.f64 z x) y x)
(* x (+ 1 (+ y (/ (* y z) x))))
(fma.f64 (+.f64 z x) y x)
(* x y)
(*.f64 y x)
(* x (+ y (/ (* y z) x)))
(*.f64 (+.f64 z x) y)
(* x (+ y (/ (* y z) x)))
(*.f64 (+.f64 z x) y)
(* x (+ y (/ (* y z) x)))
(*.f64 (+.f64 z x) y)
x
(* x (+ 1 (/ z x)))
(+.f64 z x)
(* x (+ 1 (/ z x)))
(+.f64 z x)
(* x (+ 1 (/ z x)))
(+.f64 z x)
(* -1 (* x (- (* -1 y) 1)))
(fma.f64 y x x)
(* -1 (* x (- (+ (* -1 y) (* -1 (/ (* y z) x))) 1)))
(fma.f64 (+.f64 z x) y x)
(* -1 (* x (- (+ (* -1 y) (* -1 (/ (* y z) x))) 1)))
(fma.f64 (+.f64 z x) y x)
(* -1 (* x (- (+ (* -1 y) (* -1 (/ (* y z) x))) 1)))
(fma.f64 (+.f64 z x) y x)
(* x y)
(*.f64 y x)
(* -1 (* x (+ (* -1 y) (* -1 (/ (* y z) x)))))
(*.f64 (+.f64 z x) y)
(* -1 (* x (+ (* -1 y) (* -1 (/ (* y z) x)))))
(*.f64 (+.f64 z x) y)
(* -1 (* x (+ (* -1 y) (* -1 (/ (* y z) x)))))
(*.f64 (+.f64 z x) y)
x
(* -1 (* x (- (* -1 (/ z x)) 1)))
(+.f64 z x)
(* -1 (* x (- (* -1 (/ z x)) 1)))
(+.f64 z x)
(* -1 (* x (- (* -1 (/ z x)) 1)))
(+.f64 z x)

rewrite291.0ms (6.9%)

Memory
33.6MiB live, 225.1MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0615
0915
14115
235115
3429715
0869614
Stop Event
iter limit
node limit
iter limit
Counts
3 → 245
Calls
Call 1
Inputs
(+.f64 x (*.f64 y (+.f64 z x)))
(*.f64 y (+.f64 z x))
(+.f64 z x)
Outputs
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval194.0ms (4.6%)

Memory
-25.7MiB live, 48.6MiB allocated
Compiler

Compiled 6 491 to 817 computations (87.4% saved)

prune7.0ms (0.2%)

Memory
19.3MiB live, 19.3MiB allocated
Pruning

5 alts after pruning (5 fresh and 0 done)

PrunedKeptTotal
New3295334
Fresh000
Picked101
Done000
Total3305335
Accuracy
100.0%
Counts
335 → 5
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(fma.f64 (+.f64 z x) y x)
73.1%
(+.f64 x #s(approx (* y (+ z x)) (*.f64 z y)))
63.1%
#s(approx (+ x (* y (+ z x))) (fma.f64 y x x))
66.5%
#s(approx (+ x (* y (+ z x))) (*.f64 (+.f64 z x) y))
40.6%
#s(approx (+ x (* y (+ z x))) (*.f64 z y))
Compiler

Compiled 54 to 54 computations (0% saved)

simplify6.0ms (0.1%)

Memory
4.1MiB live, 4.1MiB allocated
Algorithm
egg-herbie
Localize:

Found 12 expressions of interest:

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01696
02393
13793
24593
35693
45693
56993
66993
78193
88393
98793
08793
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(fma.f64 (+.f64 z x) y x)
(+.f64 z x)
z
x
y
#s(approx (+ x (* y (+ z x))) (*.f64 z y))
(*.f64 z y)
z
y
#s(approx (+ x (* y (+ z x))) (fma.f64 y x x))
(fma.f64 y x x)
y
x
#s(approx (+ x (* y (+ z x))) (*.f64 (+.f64 z x) y))
(*.f64 (+.f64 z x) y)
(+.f64 z x)
z
x
y
(+.f64 x #s(approx (* y (+ z x)) (*.f64 z y)))
x
#s(approx (* y (+ z x)) (*.f64 z y))
(*.f64 z y)
z
y
Outputs
(fma.f64 (+.f64 z x) y x)
(fma.f64 y (+.f64 x z) x)
(+.f64 z x)
(+.f64 x z)
z
x
y
#s(approx (+ x (* y (+ z x))) (*.f64 z y))
#s(approx (+ x (* y (+ z x))) (*.f64 y z))
(*.f64 z y)
(*.f64 y z)
z
y
#s(approx (+ x (* y (+ z x))) (fma.f64 y x x))
(fma.f64 y x x)
y
x
#s(approx (+ x (* y (+ z x))) (*.f64 (+.f64 z x) y))
#s(approx (+ x (* y (+ z x))) (*.f64 y (+.f64 x z)))
(*.f64 (+.f64 z x) y)
(*.f64 y (+.f64 x z))
(+.f64 z x)
(+.f64 x z)
z
x
y
(+.f64 x #s(approx (* y (+ z x)) (*.f64 z y)))
(+.f64 #s(approx (* y (+ z x)) (*.f64 y z)) x)
x
#s(approx (* y (+ z x)) (*.f64 z y))
#s(approx (* y (+ z x)) (*.f64 y z))
(*.f64 z y)
(*.f64 y z)
z
y

localize40.0ms (1%)

Memory
7.6MiB live, 45.5MiB allocated
Localize:

Found 12 expressions of interest:

NewMetricScoreProgram
accuracy0
(*.f64 z y)
accuracy0.0078125
(+.f64 x #s(approx (* y (+ z x)) (*.f64 z y)))
accuracy29.318851440095774
#s(approx (* y (+ z x)) (*.f64 z y))
accuracy0
(+.f64 z x)
accuracy0
(*.f64 (+.f64 z x) y)
accuracy21.419613491652086
#s(approx (+ x (* y (+ z x))) (*.f64 (+.f64 z x) y))
accuracy0
(fma.f64 y x x)
accuracy23.604132421569705
#s(approx (+ x (* y (+ z x))) (fma.f64 y x x))
accuracy0
(*.f64 z y)
accuracy38.02690036234748
#s(approx (+ x (* y (+ z x))) (*.f64 z y))
accuracy0
(fma.f64 (+.f64 z x) y x)
accuracy0
(+.f64 z x)
Samples
32.0ms256×0valid
Compiler

Compiled 142 to 26 computations (81.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 12.0ms
ival-mult: 7.0ms (56% of total)
ival-add: 5.0ms (40% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series32.0ms (0.8%)

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

9 calls:

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

simplify173.0ms (4.1%)

Memory
13.0MiB live, 86.6MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0761700
12731700
28071700
322701700
447311700
563261700
673241700
777521700
080211529
Stop Event
iter limit
node limit
Counts
324 → 312
Calls
Call 1
Inputs
(+ x (* x y))
(+ x (+ (* x y) (* y z)))
(+ x (+ (* x y) (* y z)))
(+ x (+ (* x y) (* y z)))
x
(+ x z)
(+ x z)
(+ x z)
(+ x (* x y))
(+ x (+ (* x y) (* y z)))
(+ x (+ (* x y) (* y z)))
(+ x (+ (* x y) (* y z)))
(* y z)
(* y z)
(* y z)
(* y z)
(+ x (* x y))
(+ x (+ (* x y) (* y z)))
(+ x (+ (* x y) (* y z)))
(+ x (+ (* x y) (* y z)))
(+ x (* x y))
(+ x (+ (* x y) (* y z)))
(+ x (+ (* x y) (* y z)))
(+ x (+ (* x y) (* y z)))
(* x y)
(+ (* x y) (* y z))
(+ (* x y) (* y z))
(+ (* x y) (* y z))
(+ x (* x y))
(+ x (+ (* x y) (* y z)))
(+ x (+ (* x y) (* y z)))
(+ x (+ (* x y) (* y z)))
(* x y)
(+ (* x y) (* y z))
(+ (* x y) (* y z))
(+ (* x y) (* y z))
(* y z)
(* z (+ y (+ (/ x z) (/ (* x y) z))))
(* z (+ y (+ (/ x z) (/ (* x y) z))))
(* z (+ y (+ (/ x z) (/ (* x y) z))))
z
(* z (+ 1 (/ x z)))
(* z (+ 1 (/ x z)))
(* z (+ 1 (/ x z)))
(* y z)
(* z (+ y (+ (/ x z) (/ (* x y) z))))
(* z (+ y (+ (/ x z) (/ (* x y) z))))
(* z (+ y (+ (/ x z) (/ (* x y) z))))
(* y z)
(* y z)
(* y z)
(* y z)
(* y z)
(* z (+ y (+ (/ x z) (/ (* x y) z))))
(* z (+ y (+ (/ x z) (/ (* x y) z))))
(* z (+ y (+ (/ x z) (/ (* x y) z))))
(* y z)
(* z (+ y (+ (/ x z) (/ (* x y) z))))
(* z (+ y (+ (/ x z) (/ (* x y) z))))
(* z (+ y (+ (/ x z) (/ (* x y) z))))
(* y z)
(* z (+ y (/ (* x y) z)))
(* z (+ y (/ (* x y) z)))
(* z (+ y (/ (* x y) z)))
(* y z)
(* z (+ y (+ (/ x z) (/ (* x y) z))))
(* z (+ y (+ (/ x z) (/ (* x y) z))))
(* z (+ y (+ (/ x z) (/ (* x y) z))))
(* y z)
(* z (+ y (/ (* x y) z)))
(* z (+ y (/ (* x y) z)))
(* z (+ y (/ (* x y) z)))
(* y z)
(* -1 (* z (+ (* -1 y) (* -1 (/ (+ x (* x y)) z)))))
(* -1 (* z (+ (* -1 y) (* -1 (/ (+ x (* x y)) z)))))
(* -1 (* z (+ (* -1 y) (* -1 (/ (+ x (* x y)) z)))))
z
(* -1 (* z (- (* -1 (/ x z)) 1)))
(* -1 (* z (- (* -1 (/ x z)) 1)))
(* -1 (* z (- (* -1 (/ x z)) 1)))
(* y z)
(* -1 (* z (+ (* -1 y) (* -1 (/ (+ x (* x y)) z)))))
(* -1 (* z (+ (* -1 y) (* -1 (/ (+ x (* x y)) z)))))
(* -1 (* z (+ (* -1 y) (* -1 (/ (+ x (* x y)) z)))))
(* y z)
(* y z)
(* y z)
(* y z)
(* y z)
(* -1 (* z (+ (* -1 y) (* -1 (/ (+ x (* x y)) z)))))
(* -1 (* z (+ (* -1 y) (* -1 (/ (+ x (* x y)) z)))))
(* -1 (* z (+ (* -1 y) (* -1 (/ (+ x (* x y)) z)))))
(* y z)
(* -1 (* z (+ (* -1 y) (* -1 (/ (+ x (* x y)) z)))))
(* -1 (* z (+ (* -1 y) (* -1 (/ (+ x (* x y)) z)))))
(* -1 (* z (+ (* -1 y) (* -1 (/ (+ x (* x y)) z)))))
(* y z)
(* -1 (* z (+ (* -1 y) (* -1 (/ (* x y) z)))))
(* -1 (* z (+ (* -1 y) (* -1 (/ (* x y) z)))))
(* -1 (* z (+ (* -1 y) (* -1 (/ (* x y) z)))))
(* y z)
(* -1 (* z (+ (* -1 y) (* -1 (/ (+ x (* x y)) z)))))
(* -1 (* z (+ (* -1 y) (* -1 (/ (+ x (* x y)) z)))))
(* -1 (* z (+ (* -1 y) (* -1 (/ (+ x (* x y)) z)))))
(* y z)
(* -1 (* z (+ (* -1 y) (* -1 (/ (* x y) z)))))
(* -1 (* z (+ (* -1 y) (* -1 (/ (* x y) z)))))
(* -1 (* z (+ (* -1 y) (* -1 (/ (* x y) z)))))
x
(+ x (* y (+ x z)))
(+ x (* y (+ x z)))
(+ x (* y (+ x z)))
x
(+ x (* y (+ x z)))
(+ x (* y (+ x z)))
(+ x (* y (+ x z)))
(* y z)
(* y z)
(* y z)
(* y z)
x
(+ x (* y (+ x z)))
(+ x (* y (+ x z)))
(+ x (* y (+ x z)))
x
(+ x (* x y))
(+ x (* x y))
(+ x (* x y))
x
(+ x (* y (+ x z)))
(+ x (* y (+ x z)))
(+ x (* y (+ x z)))
(* y (+ x z))
(* y (+ x z))
(* y (+ x z))
(* y (+ x z))
x
(+ x (* y (+ x z)))
(+ x (* y (+ x z)))
(+ x (* y (+ x z)))
(* y (+ x z))
(* y (+ x z))
(* y (+ x z))
(* y (+ x z))
(* y (+ x z))
(* y (+ x (+ z (/ x y))))
(* y (+ x (+ z (/ x y))))
(* y (+ x (+ z (/ x y))))
(* y (+ x z))
(* y (+ x (+ z (/ x y))))
(* y (+ x (+ z (/ x y))))
(* y (+ x (+ z (/ x y))))
(* y z)
(* y z)
(* y z)
(* y z)
(* y (+ x z))
(* y (+ x (+ z (/ x y))))
(* y (+ x (+ z (/ x y))))
(* y (+ x (+ z (/ x y))))
(* x y)
(* y (+ x (/ x y)))
(* y (+ x (/ x y)))
(* y (+ x (/ x y)))
(* y (+ x z))
(* y (+ x (+ z (/ x y))))
(* y (+ x (+ z (/ x y))))
(* y (+ x (+ z (/ x y))))
(* y (+ x z))
(* y (+ x z))
(* y (+ x z))
(* y (+ x z))
(* y (+ x z))
(* y (+ x (+ z (/ x y))))
(* y (+ x (+ z (/ x y))))
(* y (+ x (+ z (/ x y))))
(* y (+ x z))
(* y (+ x z))
(* y (+ x z))
(* y (+ x z))
(* y (+ x z))
(* -1 (* y (+ (* -1 (+ x z)) (* -1 (/ x y)))))
(* -1 (* y (+ (* -1 (+ x z)) (* -1 (/ x y)))))
(* -1 (* y (+ (* -1 (+ x z)) (* -1 (/ x y)))))
(* y (+ x z))
(* -1 (* y (+ (* -1 (+ x z)) (* -1 (/ x y)))))
(* -1 (* y (+ (* -1 (+ x z)) (* -1 (/ x y)))))
(* -1 (* y (+ (* -1 (+ x z)) (* -1 (/ x y)))))
(* y z)
(* y z)
(* y z)
(* y z)
(* y (+ x z))
(* -1 (* y (+ (* -1 (+ x z)) (* -1 (/ x y)))))
(* -1 (* y (+ (* -1 (+ x z)) (* -1 (/ x y)))))
(* -1 (* y (+ (* -1 (+ x z)) (* -1 (/ x y)))))
(* x y)
(* -1 (* y (+ (* -1 x) (* -1 (/ x y)))))
(* -1 (* y (+ (* -1 x) (* -1 (/ x y)))))
(* -1 (* y (+ (* -1 x) (* -1 (/ x y)))))
(* y (+ x z))
(* -1 (* y (+ (* -1 (+ x z)) (* -1 (/ x y)))))
(* -1 (* y (+ (* -1 (+ x z)) (* -1 (/ x y)))))
(* -1 (* y (+ (* -1 (+ x z)) (* -1 (/ x y)))))
(* y (+ x z))
(* y (+ x z))
(* y (+ x z))
(* y (+ x z))
(* y (+ x z))
(* -1 (* y (+ (* -1 (+ x z)) (* -1 (/ x y)))))
(* -1 (* y (+ (* -1 (+ x z)) (* -1 (/ x y)))))
(* -1 (* y (+ (* -1 (+ x z)) (* -1 (/ x y)))))
(* y (+ x z))
(* y (+ x z))
(* y (+ x z))
(* y (+ x z))
(* y z)
(+ (* x (+ 1 y)) (* y z))
(+ (* x (+ 1 y)) (* y z))
(+ (* x (+ 1 y)) (* y z))
z
(+ x z)
(+ x z)
(+ x z)
(* y z)
(+ (* x (+ 1 y)) (* y z))
(+ (* x (+ 1 y)) (* y z))
(+ (* x (+ 1 y)) (* y z))
(* y z)
(+ (* x (+ 1 y)) (* y z))
(+ (* x (+ 1 y)) (* y z))
(+ (* x (+ 1 y)) (* y z))
(* x (+ 1 y))
(* x (+ 1 y))
(* x (+ 1 y))
(* x (+ 1 y))
(* y z)
(+ (* x (+ 1 y)) (* y z))
(+ (* x (+ 1 y)) (* y z))
(+ (* x (+ 1 y)) (* y z))
(* y z)
(+ (* x y) (* y z))
(+ (* x y) (* y z))
(+ (* x y) (* y z))
(* y z)
(+ (* x (+ 1 y)) (* y z))
(+ (* x (+ 1 y)) (* y z))
(+ (* x (+ 1 y)) (* y z))
(* y z)
(+ (* x y) (* y z))
(+ (* x y) (* y z))
(+ (* x y) (* y z))
(* x (+ 1 y))
(* x (+ 1 (+ y (/ (* y z) x))))
(* x (+ 1 (+ y (/ (* y z) x))))
(* x (+ 1 (+ y (/ (* y z) x))))
x
(* x (+ 1 (/ z x)))
(* x (+ 1 (/ z x)))
(* x (+ 1 (/ z x)))
(* x (+ 1 y))
(* x (+ 1 (+ y (/ (* y z) x))))
(* x (+ 1 (+ y (/ (* y z) x))))
(* x (+ 1 (+ y (/ (* y z) x))))
(* x (+ 1 y))
(* x (+ 1 (+ y (/ (* y z) x))))
(* x (+ 1 (+ y (/ (* y z) x))))
(* x (+ 1 (+ y (/ (* y z) x))))
(* x (+ 1 y))
(* x (+ 1 y))
(* x (+ 1 y))
(* x (+ 1 y))
(* x (+ 1 y))
(* x (+ 1 (+ y (/ (* y z) x))))
(* x (+ 1 (+ y (/ (* y z) x))))
(* x (+ 1 (+ y (/ (* y z) x))))
(* x y)
(* x (+ y (/ (* y z) x)))
(* x (+ y (/ (* y z) x)))
(* x (+ y (/ (* y z) x)))
(* x (+ 1 y))
(* x (+ 1 (+ y (/ (* y z) x))))
(* x (+ 1 (+ y (/ (* y z) x))))
(* x (+ 1 (+ y (/ (* y z) x))))
(* x y)
(* x (+ y (/ (* y z) x)))
(* x (+ y (/ (* y z) x)))
(* x (+ y (/ (* y z) x)))
(* -1 (* x (- (* -1 y) 1)))
(* -1 (* x (- (+ (* -1 y) (* -1 (/ (* y z) x))) 1)))
(* -1 (* x (- (+ (* -1 y) (* -1 (/ (* y z) x))) 1)))
(* -1 (* x (- (+ (* -1 y) (* -1 (/ (* y z) x))) 1)))
x
(* -1 (* x (- (* -1 (/ z x)) 1)))
(* -1 (* x (- (* -1 (/ z x)) 1)))
(* -1 (* x (- (* -1 (/ z x)) 1)))
(* -1 (* x (- (* -1 y) 1)))
(* -1 (* x (- (+ (* -1 y) (* -1 (/ (* y z) x))) 1)))
(* -1 (* x (- (+ (* -1 y) (* -1 (/ (* y z) x))) 1)))
(* -1 (* x (- (+ (* -1 y) (* -1 (/ (* y z) x))) 1)))
(* -1 (* x (- (* -1 y) 1)))
(* -1 (* x (- (+ (* -1 y) (* -1 (/ (* y z) x))) 1)))
(* -1 (* x (- (+ (* -1 y) (* -1 (/ (* y z) x))) 1)))
(* -1 (* x (- (+ (* -1 y) (* -1 (/ (* y z) x))) 1)))
(* -1 (* x (- (* -1 y) 1)))
(* -1 (* x (- (* -1 y) 1)))
(* -1 (* x (- (* -1 y) 1)))
(* -1 (* x (- (* -1 y) 1)))
(* -1 (* x (- (* -1 y) 1)))
(* -1 (* x (- (+ (* -1 y) (* -1 (/ (* y z) x))) 1)))
(* -1 (* x (- (+ (* -1 y) (* -1 (/ (* y z) x))) 1)))
(* -1 (* x (- (+ (* -1 y) (* -1 (/ (* y z) x))) 1)))
(* x y)
(* -1 (* x (+ (* -1 y) (* -1 (/ (* y z) x)))))
(* -1 (* x (+ (* -1 y) (* -1 (/ (* y z) x)))))
(* -1 (* x (+ (* -1 y) (* -1 (/ (* y z) x)))))
(* -1 (* x (- (* -1 y) 1)))
(* -1 (* x (- (+ (* -1 y) (* -1 (/ (* y z) x))) 1)))
(* -1 (* x (- (+ (* -1 y) (* -1 (/ (* y z) x))) 1)))
(* -1 (* x (- (+ (* -1 y) (* -1 (/ (* y z) x))) 1)))
(* x y)
(* -1 (* x (+ (* -1 y) (* -1 (/ (* y z) x)))))
(* -1 (* x (+ (* -1 y) (* -1 (/ (* y z) x)))))
(* -1 (* x (+ (* -1 y) (* -1 (/ (* y z) x)))))
Outputs
(+ x (* x y))
(fma.f64 y x x)
(+ x (+ (* x y) (* y z)))
(fma.f64 (+.f64 z x) y x)
(+ x (+ (* x y) (* y z)))
(fma.f64 (+.f64 z x) y x)
(+ x (+ (* x y) (* y z)))
(fma.f64 (+.f64 z x) y x)
x
(+ x z)
(+.f64 z x)
(+ x z)
(+.f64 z x)
(+ x z)
(+.f64 z x)
(+ x (* x y))
(fma.f64 y x x)
(+ x (+ (* x y) (* y z)))
(fma.f64 (+.f64 z x) y x)
(+ x (+ (* x y) (* y z)))
(fma.f64 (+.f64 z x) y x)
(+ x (+ (* x y) (* y z)))
(fma.f64 (+.f64 z x) y x)
(* y z)
(*.f64 z y)
(* y z)
(*.f64 z y)
(* y z)
(*.f64 z y)
(* y z)
(*.f64 z y)
(+ x (* x y))
(fma.f64 y x x)
(+ x (+ (* x y) (* y z)))
(fma.f64 (+.f64 z x) y x)
(+ x (+ (* x y) (* y z)))
(fma.f64 (+.f64 z x) y x)
(+ x (+ (* x y) (* y z)))
(fma.f64 (+.f64 z x) y x)
(+ x (* x y))
(fma.f64 y x x)
(+ x (+ (* x y) (* y z)))
(fma.f64 (+.f64 z x) y x)
(+ x (+ (* x y) (* y z)))
(fma.f64 (+.f64 z x) y x)
(+ x (+ (* x y) (* y z)))
(fma.f64 (+.f64 z x) y x)
(* x y)
(*.f64 y x)
(+ (* x y) (* y z))
(*.f64 (+.f64 z x) y)
(+ (* x y) (* y z))
(*.f64 (+.f64 z x) y)
(+ (* x y) (* y z))
(*.f64 (+.f64 z x) y)
(+ x (* x y))
(fma.f64 y x x)
(+ x (+ (* x y) (* y z)))
(fma.f64 (+.f64 z x) y x)
(+ x (+ (* x y) (* y z)))
(fma.f64 (+.f64 z x) y x)
(+ x (+ (* x y) (* y z)))
(fma.f64 (+.f64 z x) y x)
(* x y)
(*.f64 y x)
(+ (* x y) (* y z))
(*.f64 (+.f64 z x) y)
(+ (* x y) (* y z))
(*.f64 (+.f64 z x) y)
(+ (* x y) (* y z))
(*.f64 (+.f64 z x) y)
(* y z)
(*.f64 z y)
(* z (+ y (+ (/ x z) (/ (* x y) z))))
(fma.f64 (+.f64 z x) y x)
(* z (+ y (+ (/ x z) (/ (* x y) z))))
(fma.f64 (+.f64 z x) y x)
(* z (+ y (+ (/ x z) (/ (* x y) z))))
(fma.f64 (+.f64 z x) y x)
z
(* z (+ 1 (/ x z)))
(+.f64 z x)
(* z (+ 1 (/ x z)))
(+.f64 z x)
(* z (+ 1 (/ x z)))
(+.f64 z x)
(* y z)
(*.f64 z y)
(* z (+ y (+ (/ x z) (/ (* x y) z))))
(fma.f64 (+.f64 z x) y x)
(* z (+ y (+ (/ x z) (/ (* x y) z))))
(fma.f64 (+.f64 z x) y x)
(* z (+ y (+ (/ x z) (/ (* x y) z))))
(fma.f64 (+.f64 z x) y x)
(* y z)
(*.f64 z y)
(* y z)
(*.f64 z y)
(* y z)
(*.f64 z y)
(* y z)
(*.f64 z y)
(* y z)
(*.f64 z y)
(* z (+ y (+ (/ x z) (/ (* x y) z))))
(fma.f64 (+.f64 z x) y x)
(* z (+ y (+ (/ x z) (/ (* x y) z))))
(fma.f64 (+.f64 z x) y x)
(* z (+ y (+ (/ x z) (/ (* x y) z))))
(fma.f64 (+.f64 z x) y x)
(* y z)
(*.f64 z y)
(* z (+ y (+ (/ x z) (/ (* x y) z))))
(fma.f64 (+.f64 z x) y x)
(* z (+ y (+ (/ x z) (/ (* x y) z))))
(fma.f64 (+.f64 z x) y x)
(* z (+ y (+ (/ x z) (/ (* x y) z))))
(fma.f64 (+.f64 z x) y x)
(* y z)
(*.f64 z y)
(* z (+ y (/ (* x y) z)))
(*.f64 (+.f64 z x) y)
(* z (+ y (/ (* x y) z)))
(*.f64 (+.f64 z x) y)
(* z (+ y (/ (* x y) z)))
(*.f64 (+.f64 z x) y)
(* y z)
(*.f64 z y)
(* z (+ y (+ (/ x z) (/ (* x y) z))))
(fma.f64 (+.f64 z x) y x)
(* z (+ y (+ (/ x z) (/ (* x y) z))))
(fma.f64 (+.f64 z x) y x)
(* z (+ y (+ (/ x z) (/ (* x y) z))))
(fma.f64 (+.f64 z x) y x)
(* y z)
(*.f64 z y)
(* z (+ y (/ (* x y) z)))
(*.f64 (+.f64 z x) y)
(* z (+ y (/ (* x y) z)))
(*.f64 (+.f64 z x) y)
(* z (+ y (/ (* x y) z)))
(*.f64 (+.f64 z x) y)
(* y z)
(*.f64 z y)
(* -1 (* z (+ (* -1 y) (* -1 (/ (+ x (* x y)) z)))))
(fma.f64 (+.f64 z x) y x)
(* -1 (* z (+ (* -1 y) (* -1 (/ (+ x (* x y)) z)))))
(fma.f64 (+.f64 z x) y x)
(* -1 (* z (+ (* -1 y) (* -1 (/ (+ x (* x y)) z)))))
(fma.f64 (+.f64 z x) y x)
z
(* -1 (* z (- (* -1 (/ x z)) 1)))
(+.f64 z x)
(* -1 (* z (- (* -1 (/ x z)) 1)))
(+.f64 z x)
(* -1 (* z (- (* -1 (/ x z)) 1)))
(+.f64 z x)
(* y z)
(*.f64 z y)
(* -1 (* z (+ (* -1 y) (* -1 (/ (+ x (* x y)) z)))))
(fma.f64 (+.f64 z x) y x)
(* -1 (* z (+ (* -1 y) (* -1 (/ (+ x (* x y)) z)))))
(fma.f64 (+.f64 z x) y x)
(* -1 (* z (+ (* -1 y) (* -1 (/ (+ x (* x y)) z)))))
(fma.f64 (+.f64 z x) y x)
(* y z)
(*.f64 z y)
(* y z)
(*.f64 z y)
(* y z)
(*.f64 z y)
(* y z)
(*.f64 z y)
(* y z)
(*.f64 z y)
(* -1 (* z (+ (* -1 y) (* -1 (/ (+ x (* x y)) z)))))
(fma.f64 (+.f64 z x) y x)
(* -1 (* z (+ (* -1 y) (* -1 (/ (+ x (* x y)) z)))))
(fma.f64 (+.f64 z x) y x)
(* -1 (* z (+ (* -1 y) (* -1 (/ (+ x (* x y)) z)))))
(fma.f64 (+.f64 z x) y x)
(* y z)
(*.f64 z y)
(* -1 (* z (+ (* -1 y) (* -1 (/ (+ x (* x y)) z)))))
(fma.f64 (+.f64 z x) y x)
(* -1 (* z (+ (* -1 y) (* -1 (/ (+ x (* x y)) z)))))
(fma.f64 (+.f64 z x) y x)
(* -1 (* z (+ (* -1 y) (* -1 (/ (+ x (* x y)) z)))))
(fma.f64 (+.f64 z x) y x)
(* y z)
(*.f64 z y)
(* -1 (* z (+ (* -1 y) (* -1 (/ (* x y) z)))))
(*.f64 (+.f64 z x) y)
(* -1 (* z (+ (* -1 y) (* -1 (/ (* x y) z)))))
(*.f64 (+.f64 z x) y)
(* -1 (* z (+ (* -1 y) (* -1 (/ (* x y) z)))))
(*.f64 (+.f64 z x) y)
(* y z)
(*.f64 z y)
(* -1 (* z (+ (* -1 y) (* -1 (/ (+ x (* x y)) z)))))
(fma.f64 (+.f64 z x) y x)
(* -1 (* z (+ (* -1 y) (* -1 (/ (+ x (* x y)) z)))))
(fma.f64 (+.f64 z x) y x)
(* -1 (* z (+ (* -1 y) (* -1 (/ (+ x (* x y)) z)))))
(fma.f64 (+.f64 z x) y x)
(* y z)
(*.f64 z y)
(* -1 (* z (+ (* -1 y) (* -1 (/ (* x y) z)))))
(*.f64 (+.f64 z x) y)
(* -1 (* z (+ (* -1 y) (* -1 (/ (* x y) z)))))
(*.f64 (+.f64 z x) y)
(* -1 (* z (+ (* -1 y) (* -1 (/ (* x y) z)))))
(*.f64 (+.f64 z x) y)
x
(+ x (* y (+ x z)))
(fma.f64 (+.f64 z x) y x)
(+ x (* y (+ x z)))
(fma.f64 (+.f64 z x) y x)
(+ x (* y (+ x z)))
(fma.f64 (+.f64 z x) y x)
x
(+ x (* y (+ x z)))
(fma.f64 (+.f64 z x) y x)
(+ x (* y (+ x z)))
(fma.f64 (+.f64 z x) y x)
(+ x (* y (+ x z)))
(fma.f64 (+.f64 z x) y x)
(* y z)
(*.f64 z y)
(* y z)
(*.f64 z y)
(* y z)
(*.f64 z y)
(* y z)
(*.f64 z y)
x
(+ x (* y (+ x z)))
(fma.f64 (+.f64 z x) y x)
(+ x (* y (+ x z)))
(fma.f64 (+.f64 z x) y x)
(+ x (* y (+ x z)))
(fma.f64 (+.f64 z x) y x)
x
(+ x (* x y))
(fma.f64 y x x)
(+ x (* x y))
(fma.f64 y x x)
(+ x (* x y))
(fma.f64 y x x)
x
(+ x (* y (+ x z)))
(fma.f64 (+.f64 z x) y x)
(+ x (* y (+ x z)))
(fma.f64 (+.f64 z x) y x)
(+ x (* y (+ x z)))
(fma.f64 (+.f64 z x) y x)
(* y (+ x z))
(*.f64 (+.f64 z x) y)
(* y (+ x z))
(*.f64 (+.f64 z x) y)
(* y (+ x z))
(*.f64 (+.f64 z x) y)
(* y (+ x z))
(*.f64 (+.f64 z x) y)
x
(+ x (* y (+ x z)))
(fma.f64 (+.f64 z x) y x)
(+ x (* y (+ x z)))
(fma.f64 (+.f64 z x) y x)
(+ x (* y (+ x z)))
(fma.f64 (+.f64 z x) y x)
(* y (+ x z))
(*.f64 (+.f64 z x) y)
(* y (+ x z))
(*.f64 (+.f64 z x) y)
(* y (+ x z))
(*.f64 (+.f64 z x) y)
(* y (+ x z))
(*.f64 (+.f64 z x) y)
(* y (+ x z))
(*.f64 (+.f64 z x) y)
(* y (+ x (+ z (/ x y))))
(fma.f64 (+.f64 z x) y x)
(* y (+ x (+ z (/ x y))))
(fma.f64 (+.f64 z x) y x)
(* y (+ x (+ z (/ x y))))
(fma.f64 (+.f64 z x) y x)
(* y (+ x z))
(*.f64 (+.f64 z x) y)
(* y (+ x (+ z (/ x y))))
(fma.f64 (+.f64 z x) y x)
(* y (+ x (+ z (/ x y))))
(fma.f64 (+.f64 z x) y x)
(* y (+ x (+ z (/ x y))))
(fma.f64 (+.f64 z x) y x)
(* y z)
(*.f64 z y)
(* y z)
(*.f64 z y)
(* y z)
(*.f64 z y)
(* y z)
(*.f64 z y)
(* y (+ x z))
(*.f64 (+.f64 z x) y)
(* y (+ x (+ z (/ x y))))
(fma.f64 (+.f64 z x) y x)
(* y (+ x (+ z (/ x y))))
(fma.f64 (+.f64 z x) y x)
(* y (+ x (+ z (/ x y))))
(fma.f64 (+.f64 z x) y x)
(* x y)
(*.f64 y x)
(* y (+ x (/ x y)))
(fma.f64 y x x)
(* y (+ x (/ x y)))
(fma.f64 y x x)
(* y (+ x (/ x y)))
(fma.f64 y x x)
(* y (+ x z))
(*.f64 (+.f64 z x) y)
(* y (+ x (+ z (/ x y))))
(fma.f64 (+.f64 z x) y x)
(* y (+ x (+ z (/ x y))))
(fma.f64 (+.f64 z x) y x)
(* y (+ x (+ z (/ x y))))
(fma.f64 (+.f64 z x) y x)
(* y (+ x z))
(*.f64 (+.f64 z x) y)
(* y (+ x z))
(*.f64 (+.f64 z x) y)
(* y (+ x z))
(*.f64 (+.f64 z x) y)
(* y (+ x z))
(*.f64 (+.f64 z x) y)
(* y (+ x z))
(*.f64 (+.f64 z x) y)
(* y (+ x (+ z (/ x y))))
(fma.f64 (+.f64 z x) y x)
(* y (+ x (+ z (/ x y))))
(fma.f64 (+.f64 z x) y x)
(* y (+ x (+ z (/ x y))))
(fma.f64 (+.f64 z x) y x)
(* y (+ x z))
(*.f64 (+.f64 z x) y)
(* y (+ x z))
(*.f64 (+.f64 z x) y)
(* y (+ x z))
(*.f64 (+.f64 z x) y)
(* y (+ x z))
(*.f64 (+.f64 z x) y)
(* y (+ x z))
(*.f64 (+.f64 z x) y)
(* -1 (* y (+ (* -1 (+ x z)) (* -1 (/ x y)))))
(fma.f64 (+.f64 z x) y x)
(* -1 (* y (+ (* -1 (+ x z)) (* -1 (/ x y)))))
(fma.f64 (+.f64 z x) y x)
(* -1 (* y (+ (* -1 (+ x z)) (* -1 (/ x y)))))
(fma.f64 (+.f64 z x) y x)
(* y (+ x z))
(*.f64 (+.f64 z x) y)
(* -1 (* y (+ (* -1 (+ x z)) (* -1 (/ x y)))))
(fma.f64 (+.f64 z x) y x)
(* -1 (* y (+ (* -1 (+ x z)) (* -1 (/ x y)))))
(fma.f64 (+.f64 z x) y x)
(* -1 (* y (+ (* -1 (+ x z)) (* -1 (/ x y)))))
(fma.f64 (+.f64 z x) y x)
(* y z)
(*.f64 z y)
(* y z)
(*.f64 z y)
(* y z)
(*.f64 z y)
(* y z)
(*.f64 z y)
(* y (+ x z))
(*.f64 (+.f64 z x) y)
(* -1 (* y (+ (* -1 (+ x z)) (* -1 (/ x y)))))
(fma.f64 (+.f64 z x) y x)
(* -1 (* y (+ (* -1 (+ x z)) (* -1 (/ x y)))))
(fma.f64 (+.f64 z x) y x)
(* -1 (* y (+ (* -1 (+ x z)) (* -1 (/ x y)))))
(fma.f64 (+.f64 z x) y x)
(* x y)
(*.f64 y x)
(* -1 (* y (+ (* -1 x) (* -1 (/ x y)))))
(fma.f64 y x x)
(* -1 (* y (+ (* -1 x) (* -1 (/ x y)))))
(fma.f64 y x x)
(* -1 (* y (+ (* -1 x) (* -1 (/ x y)))))
(fma.f64 y x x)
(* y (+ x z))
(*.f64 (+.f64 z x) y)
(* -1 (* y (+ (* -1 (+ x z)) (* -1 (/ x y)))))
(fma.f64 (+.f64 z x) y x)
(* -1 (* y (+ (* -1 (+ x z)) (* -1 (/ x y)))))
(fma.f64 (+.f64 z x) y x)
(* -1 (* y (+ (* -1 (+ x z)) (* -1 (/ x y)))))
(fma.f64 (+.f64 z x) y x)
(* y (+ x z))
(*.f64 (+.f64 z x) y)
(* y (+ x z))
(*.f64 (+.f64 z x) y)
(* y (+ x z))
(*.f64 (+.f64 z x) y)
(* y (+ x z))
(*.f64 (+.f64 z x) y)
(* y (+ x z))
(*.f64 (+.f64 z x) y)
(* -1 (* y (+ (* -1 (+ x z)) (* -1 (/ x y)))))
(fma.f64 (+.f64 z x) y x)
(* -1 (* y (+ (* -1 (+ x z)) (* -1 (/ x y)))))
(fma.f64 (+.f64 z x) y x)
(* -1 (* y (+ (* -1 (+ x z)) (* -1 (/ x y)))))
(fma.f64 (+.f64 z x) y x)
(* y (+ x z))
(*.f64 (+.f64 z x) y)
(* y (+ x z))
(*.f64 (+.f64 z x) y)
(* y (+ x z))
(*.f64 (+.f64 z x) y)
(* y (+ x z))
(*.f64 (+.f64 z x) y)
(* y z)
(*.f64 z y)
(+ (* x (+ 1 y)) (* y z))
(fma.f64 (+.f64 z x) y x)
(+ (* x (+ 1 y)) (* y z))
(fma.f64 (+.f64 z x) y x)
(+ (* x (+ 1 y)) (* y z))
(fma.f64 (+.f64 z x) y x)
z
(+ x z)
(+.f64 z x)
(+ x z)
(+.f64 z x)
(+ x z)
(+.f64 z x)
(* y z)
(*.f64 z y)
(+ (* x (+ 1 y)) (* y z))
(fma.f64 (+.f64 z x) y x)
(+ (* x (+ 1 y)) (* y z))
(fma.f64 (+.f64 z x) y x)
(+ (* x (+ 1 y)) (* y z))
(fma.f64 (+.f64 z x) y x)
(* y z)
(*.f64 z y)
(+ (* x (+ 1 y)) (* y z))
(fma.f64 (+.f64 z x) y x)
(+ (* x (+ 1 y)) (* y z))
(fma.f64 (+.f64 z x) y x)
(+ (* x (+ 1 y)) (* y z))
(fma.f64 (+.f64 z x) y x)
(* x (+ 1 y))
(fma.f64 y x x)
(* x (+ 1 y))
(fma.f64 y x x)
(* x (+ 1 y))
(fma.f64 y x x)
(* x (+ 1 y))
(fma.f64 y x x)
(* y z)
(*.f64 z y)
(+ (* x (+ 1 y)) (* y z))
(fma.f64 (+.f64 z x) y x)
(+ (* x (+ 1 y)) (* y z))
(fma.f64 (+.f64 z x) y x)
(+ (* x (+ 1 y)) (* y z))
(fma.f64 (+.f64 z x) y x)
(* y z)
(*.f64 z y)
(+ (* x y) (* y z))
(*.f64 (+.f64 z x) y)
(+ (* x y) (* y z))
(*.f64 (+.f64 z x) y)
(+ (* x y) (* y z))
(*.f64 (+.f64 z x) y)
(* y z)
(*.f64 z y)
(+ (* x (+ 1 y)) (* y z))
(fma.f64 (+.f64 z x) y x)
(+ (* x (+ 1 y)) (* y z))
(fma.f64 (+.f64 z x) y x)
(+ (* x (+ 1 y)) (* y z))
(fma.f64 (+.f64 z x) y x)
(* y z)
(*.f64 z y)
(+ (* x y) (* y z))
(*.f64 (+.f64 z x) y)
(+ (* x y) (* y z))
(*.f64 (+.f64 z x) y)
(+ (* x y) (* y z))
(*.f64 (+.f64 z x) y)
(* x (+ 1 y))
(fma.f64 y x x)
(* x (+ 1 (+ y (/ (* y z) x))))
(fma.f64 (+.f64 z x) y x)
(* x (+ 1 (+ y (/ (* y z) x))))
(fma.f64 (+.f64 z x) y x)
(* x (+ 1 (+ y (/ (* y z) x))))
(fma.f64 (+.f64 z x) y x)
x
(* x (+ 1 (/ z x)))
(+.f64 z x)
(* x (+ 1 (/ z x)))
(+.f64 z x)
(* x (+ 1 (/ z x)))
(+.f64 z x)
(* x (+ 1 y))
(fma.f64 y x x)
(* x (+ 1 (+ y (/ (* y z) x))))
(fma.f64 (+.f64 z x) y x)
(* x (+ 1 (+ y (/ (* y z) x))))
(fma.f64 (+.f64 z x) y x)
(* x (+ 1 (+ y (/ (* y z) x))))
(fma.f64 (+.f64 z x) y x)
(* x (+ 1 y))
(fma.f64 y x x)
(* x (+ 1 (+ y (/ (* y z) x))))
(fma.f64 (+.f64 z x) y x)
(* x (+ 1 (+ y (/ (* y z) x))))
(fma.f64 (+.f64 z x) y x)
(* x (+ 1 (+ y (/ (* y z) x))))
(fma.f64 (+.f64 z x) y x)
(* x (+ 1 y))
(fma.f64 y x x)
(* x (+ 1 y))
(fma.f64 y x x)
(* x (+ 1 y))
(fma.f64 y x x)
(* x (+ 1 y))
(fma.f64 y x x)
(* x (+ 1 y))
(fma.f64 y x x)
(* x (+ 1 (+ y (/ (* y z) x))))
(fma.f64 (+.f64 z x) y x)
(* x (+ 1 (+ y (/ (* y z) x))))
(fma.f64 (+.f64 z x) y x)
(* x (+ 1 (+ y (/ (* y z) x))))
(fma.f64 (+.f64 z x) y x)
(* x y)
(*.f64 y x)
(* x (+ y (/ (* y z) x)))
(*.f64 (+.f64 z x) y)
(* x (+ y (/ (* y z) x)))
(*.f64 (+.f64 z x) y)
(* x (+ y (/ (* y z) x)))
(*.f64 (+.f64 z x) y)
(* x (+ 1 y))
(fma.f64 y x x)
(* x (+ 1 (+ y (/ (* y z) x))))
(fma.f64 (+.f64 z x) y x)
(* x (+ 1 (+ y (/ (* y z) x))))
(fma.f64 (+.f64 z x) y x)
(* x (+ 1 (+ y (/ (* y z) x))))
(fma.f64 (+.f64 z x) y x)
(* x y)
(*.f64 y x)
(* x (+ y (/ (* y z) x)))
(*.f64 (+.f64 z x) y)
(* x (+ y (/ (* y z) x)))
(*.f64 (+.f64 z x) y)
(* x (+ y (/ (* y z) x)))
(*.f64 (+.f64 z x) y)
(* -1 (* x (- (* -1 y) 1)))
(fma.f64 y x x)
(* -1 (* x (- (+ (* -1 y) (* -1 (/ (* y z) x))) 1)))
(fma.f64 (+.f64 z x) y x)
(* -1 (* x (- (+ (* -1 y) (* -1 (/ (* y z) x))) 1)))
(fma.f64 (+.f64 z x) y x)
(* -1 (* x (- (+ (* -1 y) (* -1 (/ (* y z) x))) 1)))
(fma.f64 (+.f64 z x) y x)
x
(* -1 (* x (- (* -1 (/ z x)) 1)))
(+.f64 z x)
(* -1 (* x (- (* -1 (/ z x)) 1)))
(+.f64 z x)
(* -1 (* x (- (* -1 (/ z x)) 1)))
(+.f64 z x)
(* -1 (* x (- (* -1 y) 1)))
(fma.f64 y x x)
(* -1 (* x (- (+ (* -1 y) (* -1 (/ (* y z) x))) 1)))
(fma.f64 (+.f64 z x) y x)
(* -1 (* x (- (+ (* -1 y) (* -1 (/ (* y z) x))) 1)))
(fma.f64 (+.f64 z x) y x)
(* -1 (* x (- (+ (* -1 y) (* -1 (/ (* y z) x))) 1)))
(fma.f64 (+.f64 z x) y x)
(* -1 (* x (- (* -1 y) 1)))
(fma.f64 y x x)
(* -1 (* x (- (+ (* -1 y) (* -1 (/ (* y z) x))) 1)))
(fma.f64 (+.f64 z x) y x)
(* -1 (* x (- (+ (* -1 y) (* -1 (/ (* y z) x))) 1)))
(fma.f64 (+.f64 z x) y x)
(* -1 (* x (- (+ (* -1 y) (* -1 (/ (* y z) x))) 1)))
(fma.f64 (+.f64 z x) y x)
(* -1 (* x (- (* -1 y) 1)))
(fma.f64 y x x)
(* -1 (* x (- (* -1 y) 1)))
(fma.f64 y x x)
(* -1 (* x (- (* -1 y) 1)))
(fma.f64 y x x)
(* -1 (* x (- (* -1 y) 1)))
(fma.f64 y x x)
(* -1 (* x (- (* -1 y) 1)))
(fma.f64 y x x)
(* -1 (* x (- (+ (* -1 y) (* -1 (/ (* y z) x))) 1)))
(fma.f64 (+.f64 z x) y x)
(* -1 (* x (- (+ (* -1 y) (* -1 (/ (* y z) x))) 1)))
(fma.f64 (+.f64 z x) y x)
(* -1 (* x (- (+ (* -1 y) (* -1 (/ (* y z) x))) 1)))
(fma.f64 (+.f64 z x) y x)
(* x y)
(*.f64 y x)
(* -1 (* x (+ (* -1 y) (* -1 (/ (* y z) x)))))
(*.f64 (+.f64 z x) y)
(* -1 (* x (+ (* -1 y) (* -1 (/ (* y z) x)))))
(*.f64 (+.f64 z x) y)
(* -1 (* x (+ (* -1 y) (* -1 (/ (* y z) x)))))
(*.f64 (+.f64 z x) y)
(* -1 (* x (- (* -1 y) 1)))
(fma.f64 y x x)
(* -1 (* x (- (+ (* -1 y) (* -1 (/ (* y z) x))) 1)))
(fma.f64 (+.f64 z x) y x)
(* -1 (* x (- (+ (* -1 y) (* -1 (/ (* y z) x))) 1)))
(fma.f64 (+.f64 z x) y x)
(* -1 (* x (- (+ (* -1 y) (* -1 (/ (* y z) x))) 1)))
(fma.f64 (+.f64 z x) y x)
(* x y)
(*.f64 y x)
(* -1 (* x (+ (* -1 y) (* -1 (/ (* y z) x)))))
(*.f64 (+.f64 z x) y)
(* -1 (* x (+ (* -1 y) (* -1 (/ (* y z) x)))))
(*.f64 (+.f64 z x) y)
(* -1 (* x (+ (* -1 y) (* -1 (/ (* y z) x)))))
(*.f64 (+.f64 z x) y)

rewrite233.0ms (5.5%)

Memory
7.8MiB live, 161.4MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01677
02374
19574
264074
0807374
Stop Event
iter limit
node limit
iter limit
Counts
10 → 387
Calls
Call 1
Inputs
(fma.f64 (+.f64 z x) y x)
(+.f64 z x)
#s(approx (+ x (* y (+ z x))) (*.f64 z y))
(*.f64 z y)
#s(approx (+ x (* y (+ z x))) (fma.f64 y x x))
(fma.f64 y x x)
#s(approx (+ x (* y (+ z x))) (*.f64 (+.f64 z x) y))
(*.f64 (+.f64 z x) y)
(+.f64 x #s(approx (* y (+ z x)) (*.f64 z y)))
#s(approx (* y (+ z x)) (*.f64 z y))
Outputs
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval422.0ms (9.9%)

Memory
-15.1MiB live, 184.3MiB allocated
Compiler

Compiled 13 431 to 1 274 computations (90.5% saved)

prune30.0ms (0.7%)

Memory
13.8MiB live, 62.2MiB allocated
Pruning

6 alts after pruning (1 fresh and 5 done)

PrunedKeptTotal
New7981799
Fresh000
Picked055
Done000
Total7986804
Accuracy
100.0%
Counts
804 → 6
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(fma.f64 (+.f64 z x) y x)
73.1%
(+.f64 x #s(approx (* y (+ z x)) (*.f64 z y)))
63.1%
#s(approx (+ x (* y (+ z x))) (fma.f64 y x x))
66.5%
#s(approx (+ x (* y (+ z x))) (*.f64 (+.f64 z x) y))
40.6%
#s(approx (+ x (* y (+ z x))) (*.f64 z y))
31.0%
#s(approx (+ x (* y (+ z x))) #s(approx (+ (* y x) x) (*.f64 y x)))
Compiler

Compiled 32 to 33 computations (-3.1% saved)

simplify5.0ms (0.1%)

Memory
8.2MiB live, 8.2MiB allocated
Algorithm
egg-herbie
Localize:

Found 3 expressions of interest:

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01131
01231
12531
23731
34831
44831
56131
66131
77331
87531
97931
07928
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
#s(approx (+ x (* y (+ z x))) #s(approx (+ (* y x) x) (*.f64 y x)))
#s(approx (+ (* y x) x) (*.f64 y x))
(*.f64 y x)
y
x
Outputs
#s(approx (+ x (* y (+ z x))) #s(approx (+ (* y x) x) (*.f64 y x)))
#s(approx (+ x (* y (+ z x))) #s(approx (+ (* y x) x) (*.f64 x y)))
#s(approx (+ (* y x) x) (*.f64 y x))
#s(approx (+ (* y x) x) (*.f64 x y))
(*.f64 y x)
(*.f64 x y)
y
x

localize55.0ms (1.3%)

Memory
-6.6MiB live, 31.0MiB allocated
Localize:

Found 3 expressions of interest:

NewMetricScoreProgram
accuracy0
(*.f64 y x)
accuracy23.604132421569705
#s(approx (+ x (* y (+ z x))) #s(approx (+ (* y x) x) (*.f64 y x)))
accuracy29.816861325778653
#s(approx (+ (* y x) x) (*.f64 y x))
Samples
50.0ms256×0valid
Compiler

Compiled 33 to 16 computations (51.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 8.0ms
ival-add: 4.0ms (51.1% of total)
ival-mult: 4.0ms (51.1% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series5.0ms (0.1%)

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

9 calls:

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

simplify171.0ms (4%)

Memory
-22.1MiB live, 153.1MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
054408
1186408
2540408
31461408
43799408
55931408
08405357
Stop Event
iter limit
node limit
Counts
84 → 82
Calls
Call 1
Inputs
(+ x (* x y))
(+ x (+ (* x y) (* y z)))
(+ x (+ (* x y) (* y z)))
(+ x (+ (* x y) (* y z)))
(* y z)
(* z (+ y (+ (/ x z) (/ (* x y) z))))
(* z (+ y (+ (/ x z) (/ (* x y) z))))
(* z (+ y (+ (/ x z) (/ (* x y) z))))
(* y z)
(* -1 (* z (+ (* -1 y) (* -1 (/ (+ x (* x y)) z)))))
(* -1 (* z (+ (* -1 y) (* -1 (/ (+ x (* x y)) z)))))
(* -1 (* z (+ (* -1 y) (* -1 (/ (+ x (* x y)) z)))))
x
(+ x (* y (+ x z)))
(+ x (* y (+ x z)))
(+ x (* y (+ x z)))
x
(+ x (* x y))
(+ x (* x y))
(+ x (* x y))
(* x y)
(* x y)
(* x y)
(* x y)
(* y (+ x z))
(* y (+ x (+ z (/ x y))))
(* y (+ x (+ z (/ x y))))
(* y (+ x (+ z (/ x y))))
(* x y)
(* y (+ x (/ x y)))
(* y (+ x (/ x y)))
(* y (+ x (/ x y)))
(* x y)
(* x y)
(* x y)
(* x y)
(* y (+ x z))
(* -1 (* y (+ (* -1 (+ x z)) (* -1 (/ x y)))))
(* -1 (* y (+ (* -1 (+ x z)) (* -1 (/ x y)))))
(* -1 (* y (+ (* -1 (+ x z)) (* -1 (/ x y)))))
(* x y)
(* -1 (* y (+ (* -1 x) (* -1 (/ x y)))))
(* -1 (* y (+ (* -1 x) (* -1 (/ x y)))))
(* -1 (* y (+ (* -1 x) (* -1 (/ x y)))))
(* x y)
(* x y)
(* x y)
(* x y)
(* y z)
(+ (* x (+ 1 y)) (* y z))
(+ (* x (+ 1 y)) (* y z))
(+ (* x (+ 1 y)) (* y z))
(* x (+ 1 y))
(* x (+ 1 y))
(* x (+ 1 y))
(* x (+ 1 y))
(* x y)
(* x y)
(* x y)
(* x y)
(* x (+ 1 y))
(* x (+ 1 (+ y (/ (* y z) x))))
(* x (+ 1 (+ y (/ (* y z) x))))
(* x (+ 1 (+ y (/ (* y z) x))))
(* x (+ 1 y))
(* x (+ 1 y))
(* x (+ 1 y))
(* x (+ 1 y))
(* x y)
(* x y)
(* x y)
(* x y)
(* -1 (* x (- (* -1 y) 1)))
(* -1 (* x (- (+ (* -1 y) (* -1 (/ (* y z) x))) 1)))
(* -1 (* x (- (+ (* -1 y) (* -1 (/ (* y z) x))) 1)))
(* -1 (* x (- (+ (* -1 y) (* -1 (/ (* y z) x))) 1)))
(* -1 (* x (- (* -1 y) 1)))
(* -1 (* x (- (* -1 y) 1)))
(* -1 (* x (- (* -1 y) 1)))
(* -1 (* x (- (* -1 y) 1)))
(* x y)
(* x y)
(* x y)
(* x y)
Outputs
(+ x (* x y))
(fma.f64 y x x)
(+ x (+ (* x y) (* y z)))
(fma.f64 (+.f64 z x) y x)
(+ x (+ (* x y) (* y z)))
(fma.f64 (+.f64 z x) y x)
(+ x (+ (* x y) (* y z)))
(fma.f64 (+.f64 z x) y x)
(* y z)
(*.f64 z y)
(* z (+ y (+ (/ x z) (/ (* x y) z))))
(fma.f64 (+.f64 z x) y x)
(* z (+ y (+ (/ x z) (/ (* x y) z))))
(fma.f64 (+.f64 z x) y x)
(* z (+ y (+ (/ x z) (/ (* x y) z))))
(fma.f64 (+.f64 z x) y x)
(* y z)
(*.f64 z y)
(* -1 (* z (+ (* -1 y) (* -1 (/ (+ x (* x y)) z)))))
(fma.f64 (+.f64 z x) y x)
(* -1 (* z (+ (* -1 y) (* -1 (/ (+ x (* x y)) z)))))
(fma.f64 (+.f64 z x) y x)
(* -1 (* z (+ (* -1 y) (* -1 (/ (+ x (* x y)) z)))))
(fma.f64 (+.f64 z x) y x)
x
(+ x (* y (+ x z)))
(fma.f64 (+.f64 z x) y x)
(+ x (* y (+ x z)))
(fma.f64 (+.f64 z x) y x)
(+ x (* y (+ x z)))
(fma.f64 (+.f64 z x) y x)
x
(+ x (* x y))
(fma.f64 y x x)
(+ x (* x y))
(fma.f64 y x x)
(+ x (* x y))
(fma.f64 y x x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* y (+ x z))
(*.f64 (+.f64 z x) y)
(* y (+ x (+ z (/ x y))))
(fma.f64 (+.f64 z x) y x)
(* y (+ x (+ z (/ x y))))
(fma.f64 (+.f64 z x) y x)
(* y (+ x (+ z (/ x y))))
(fma.f64 (+.f64 z x) y x)
(* x y)
(*.f64 y x)
(* y (+ x (/ x y)))
(fma.f64 y x x)
(* y (+ x (/ x y)))
(fma.f64 y x x)
(* y (+ x (/ x y)))
(fma.f64 y x x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* y (+ x z))
(*.f64 (+.f64 z x) y)
(* -1 (* y (+ (* -1 (+ x z)) (* -1 (/ x y)))))
(fma.f64 (+.f64 z x) y x)
(* -1 (* y (+ (* -1 (+ x z)) (* -1 (/ x y)))))
(fma.f64 (+.f64 z x) y x)
(* -1 (* y (+ (* -1 (+ x z)) (* -1 (/ x y)))))
(fma.f64 (+.f64 z x) y x)
(* x y)
(*.f64 y x)
(* -1 (* y (+ (* -1 x) (* -1 (/ x y)))))
(fma.f64 y x x)
(* -1 (* y (+ (* -1 x) (* -1 (/ x y)))))
(fma.f64 y x x)
(* -1 (* y (+ (* -1 x) (* -1 (/ x y)))))
(fma.f64 y x x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* y z)
(*.f64 z y)
(+ (* x (+ 1 y)) (* y z))
(fma.f64 (+.f64 z x) y x)
(+ (* x (+ 1 y)) (* y z))
(fma.f64 (+.f64 z x) y x)
(+ (* x (+ 1 y)) (* y z))
(fma.f64 (+.f64 z x) y x)
(* x (+ 1 y))
(fma.f64 y x x)
(* x (+ 1 y))
(fma.f64 y x x)
(* x (+ 1 y))
(fma.f64 y x x)
(* x (+ 1 y))
(fma.f64 y x x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x (+ 1 y))
(fma.f64 y x x)
(* x (+ 1 (+ y (/ (* y z) x))))
(fma.f64 (+.f64 z x) y x)
(* x (+ 1 (+ y (/ (* y z) x))))
(fma.f64 (+.f64 z x) y x)
(* x (+ 1 (+ y (/ (* y z) x))))
(fma.f64 (+.f64 z x) y x)
(* x (+ 1 y))
(fma.f64 y x x)
(* x (+ 1 y))
(fma.f64 y x x)
(* x (+ 1 y))
(fma.f64 y x x)
(* x (+ 1 y))
(fma.f64 y x x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* -1 (* x (- (* -1 y) 1)))
(fma.f64 y x x)
(* -1 (* x (- (+ (* -1 y) (* -1 (/ (* y z) x))) 1)))
(fma.f64 (+.f64 z x) y x)
(* -1 (* x (- (+ (* -1 y) (* -1 (/ (* y z) x))) 1)))
(fma.f64 (+.f64 z x) y x)
(* -1 (* x (- (+ (* -1 y) (* -1 (/ (* y z) x))) 1)))
(fma.f64 (+.f64 z x) y x)
(* -1 (* x (- (* -1 y) 1)))
(fma.f64 y x x)
(* -1 (* x (- (* -1 y) 1)))
(fma.f64 y x x)
(* -1 (* x (- (* -1 y) 1)))
(fma.f64 y x x)
(* -1 (* x (- (* -1 y) 1)))
(fma.f64 y x x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)

rewrite150.0ms (3.5%)

Memory
-16.7MiB live, 218.7MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01129
01229
15829
246429
3564329
0810826
Stop Event
iter limit
node limit
iter limit
Counts
3 → 6
Calls
Call 1
Inputs
#s(approx (+ x (* y (+ z x))) #s(approx (+ (* y x) x) (*.f64 y x)))
#s(approx (+ (* y x) x) (*.f64 y x))
(*.f64 y x)
Outputs
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval8.0ms (0.2%)

Memory
18.5MiB live, 18.5MiB allocated
Compiler

Compiled 544 to 32 computations (94.1% saved)

prune12.0ms (0.3%)

Memory
-28.3MiB live, 20.3MiB allocated
Pruning

6 alts after pruning (0 fresh and 6 done)

PrunedKeptTotal
New88088
Fresh000
Picked011
Done055
Total88694
Accuracy
100.0%
Counts
94 → 6
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(fma.f64 (+.f64 z x) y x)
73.1%
(+.f64 x #s(approx (* y (+ z x)) (*.f64 z y)))
63.1%
#s(approx (+ x (* y (+ z x))) (fma.f64 y x x))
66.5%
#s(approx (+ x (* y (+ z x))) (*.f64 (+.f64 z x) y))
40.6%
#s(approx (+ x (* y (+ z x))) (*.f64 z y))
31.0%
#s(approx (+ x (* y (+ z x))) #s(approx (+ (* y x) x) (*.f64 y x)))
Compiler

Compiled 71 to 51 computations (28.2% saved)

regimes13.0ms (0.3%)

Memory
31.2MiB live, 31.2MiB allocated
Counts
7 → 1
Calls
Call 1
Inputs
#s(approx (+ x (* y (+ z x))) #s(approx (+ (* y x) x) (*.f64 y x)))
#s(approx (+ x (* y (+ z x))) (*.f64 z y))
#s(approx (+ x (* y (+ z x))) (fma.f64 y x x))
#s(approx (+ x (* y (+ z x))) (*.f64 (+.f64 z x) y))
(+.f64 x #s(approx (* y (+ z x)) (*.f64 z y)))
(fma.f64 (+.f64 z x) y x)
(+.f64 x (*.f64 y (+.f64 z x)))
Outputs
(fma.f64 (+.f64 z x) y x)
Calls

4 calls:

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

Compiled 10 to 15 computations (-50% saved)

regimes13.0ms (0.3%)

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

4 calls:

4.0ms
z
3.0ms
x
3.0ms
y
2.0ms
(+.f64 x (*.f64 y (+.f64 z x)))
Results
AccuracySegmentsBranch
88.4%3x
98.5%3y
87.0%3z
86.0%3(+.f64 x (*.f64 y (+.f64 z x)))
Compiler

Compiled 10 to 15 computations (-50% saved)

regimes7.0ms (0.2%)

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

3 calls:

2.0ms
x
2.0ms
y
2.0ms
z
Results
AccuracySegmentsBranch
81.0%3z
82.8%3x
86.0%3y
Compiler

Compiled 3 to 9 computations (-200% saved)

regimes10.0ms (0.2%)

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

4 calls:

4.0ms
y
2.0ms
x
2.0ms
(+.f64 x (*.f64 y (+.f64 z x)))
2.0ms
z
Results
AccuracySegmentsBranch
76.3%3z
78.3%3x
63.1%1(+.f64 x (*.f64 y (+.f64 z x)))
70.2%4y
Compiler

Compiled 10 to 15 computations (-50% saved)

regimes7.0ms (0.2%)

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

4 calls:

2.0ms
y
2.0ms
x
2.0ms
z
2.0ms
(+.f64 x (*.f64 y (+.f64 z x)))
Results
AccuracySegmentsBranch
44.4%2(+.f64 x (*.f64 y (+.f64 z x)))
51.2%6y
54.0%3z
55.4%3x
Compiler

Compiled 10 to 15 computations (-50% saved)

regimes7.0ms (0.2%)

Memory
-17.8MiB live, 21.2MiB allocated
Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

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

4 calls:

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

Compiled 10 to 15 computations (-50% saved)

bsearch25.0ms (0.6%)

Memory
-13.0MiB live, 69.5MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
11.0ms
4.4456461820133184e-5
1.0613059269255207
12.0ms
-153.54328491393068
-4.824352465897777e-7
Samples
12.0ms272×0valid
Compiler

Compiled 214 to 250 computations (-16.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 6.0ms
ival-add: 4.0ms (62.7% of total)
ival-mult: 2.0ms (31.4% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

bsearch19.0ms (0.4%)

Memory
-0.1MiB live, 38.9MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
8.0ms
4.4456461820133184e-5
1.0613059269255207
9.0ms
-6.143118261684457e-27
-8.893941489573305e-29
Samples
10.0ms208×0valid
Compiler

Compiled 175 to 207 computations (-18.3% saved)

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

bsearch17.0ms (0.4%)

Memory
-2.6MiB live, 36.6MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
4.0ms
3.7169934166888976e-124
5.531683617317556e-124
11.0ms
-3.924046802593309e-60
-3.5070323878443688e-65
Samples
8.0ms192×0valid
Compiler

Compiled 118 to 156 computations (-32.2% saved)

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

bsearch51.0ms (1.2%)

Memory
18.9MiB live, 101.2MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
38.0ms
1.1908345260986256e+68
1.4578978494467831e+87
11.0ms
-6.522447182619092e+30
-2.5844943482836264e+21
Samples
36.0ms304×0valid
Compiler

Compiled 181 to 259 computations (-43.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 6.0ms
ival-add: 3.0ms (54% of total)
ival-mult: 2.0ms (36% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

simplify15.0ms (0.4%)

Memory
-3.2MiB live, 35.9MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
045159
176159
286159
397159
497159
5112159
6112159
7124159
8126159
9130159
Stop Event
saturated
Calls
Call 1
Inputs
(fma.f64 (+.f64 z x) y x)
(if (<=.f64 y #s(literal -1 binary64)) #s(approx (+ x (* y (+ z x))) (*.f64 (+.f64 z x) y)) (if (<=.f64 y #s(literal 1 binary64)) (+.f64 x #s(approx (* y (+ z x)) (*.f64 z y))) #s(approx (+ x (* y (+ z x))) (*.f64 (+.f64 z x) y))))
(if (<=.f64 y #s(literal -4906163943676737/22300745198530623141535718272648361505980416 binary64)) #s(approx (+ x (* y (+ z x))) (*.f64 (+.f64 z x) y)) (if (<=.f64 y #s(literal 7782220156096217/576460752303423488 binary64)) #s(approx (+ x (* y (+ z x))) (fma.f64 y x x)) #s(approx (+ x (* y (+ z x))) (*.f64 (+.f64 z x) y))))
(if (<=.f64 x #s(literal -5934344573412455/14474011154664524427946373126085988481658748083205070504932198000989141204992 binary64)) #s(approx (+ x (* y (+ z x))) (fma.f64 y x x)) (if (<=.f64 x #s(literal 1548108335651699/2977131414714805823690030317109266572712515013375254774912983855843898524112477893944078543723575564536883288499266264815757728270805630976 binary64)) #s(approx (+ x (* y (+ z x))) (*.f64 z y)) #s(approx (+ x (* y (+ z x))) (fma.f64 y x x))))
(if (<=.f64 x #s(literal -36999999999999997902848 binary64)) #s(approx (+ x (* y (+ z x))) #s(approx (+ (* y x) x) (*.f64 y x))) (if (<=.f64 x #s(literal 10500000000000000397715129551468014153619855937790206151160465384675591889879040 binary64)) #s(approx (+ x (* y (+ z x))) (*.f64 z y)) #s(approx (+ x (* y (+ z x))) #s(approx (+ (* y x) x) (*.f64 y x)))))
#s(approx (+ x (* y (+ z x))) #s(approx (+ (* y x) x) (*.f64 y x)))
Outputs
(fma.f64 (+.f64 z x) y x)
(fma.f64 (+.f64 x z) y x)
(if (<=.f64 y #s(literal -1 binary64)) #s(approx (+ x (* y (+ z x))) (*.f64 (+.f64 z x) y)) (if (<=.f64 y #s(literal 1 binary64)) (+.f64 x #s(approx (* y (+ z x)) (*.f64 z y))) #s(approx (+ x (* y (+ z x))) (*.f64 (+.f64 z x) y))))
(if (or (<=.f64 y #s(literal -1 binary64)) (not (<=.f64 y #s(literal 1 binary64)))) #s(approx (+ x (* y (+ z x))) (*.f64 y (+.f64 x z))) (+.f64 #s(approx (* y (+ z x)) (*.f64 y z)) x))
(if (<=.f64 y #s(literal -4906163943676737/22300745198530623141535718272648361505980416 binary64)) #s(approx (+ x (* y (+ z x))) (*.f64 (+.f64 z x) y)) (if (<=.f64 y #s(literal 7782220156096217/576460752303423488 binary64)) #s(approx (+ x (* y (+ z x))) (fma.f64 y x x)) #s(approx (+ x (* y (+ z x))) (*.f64 (+.f64 z x) y))))
(if (or (<=.f64 y #s(literal -4906163943676737/22300745198530623141535718272648361505980416 binary64)) (not (<=.f64 y #s(literal 7782220156096217/576460752303423488 binary64)))) #s(approx (+ x (* y (+ z x))) (*.f64 y (+.f64 x z))) #s(approx (+ x (* y (+ z x))) (fma.f64 y x x)))
(if (<=.f64 x #s(literal -5934344573412455/14474011154664524427946373126085988481658748083205070504932198000989141204992 binary64)) #s(approx (+ x (* y (+ z x))) (fma.f64 y x x)) (if (<=.f64 x #s(literal 1548108335651699/2977131414714805823690030317109266572712515013375254774912983855843898524112477893944078543723575564536883288499266264815757728270805630976 binary64)) #s(approx (+ x (* y (+ z x))) (*.f64 z y)) #s(approx (+ x (* y (+ z x))) (fma.f64 y x x))))
(if (or (<=.f64 x #s(literal -5934344573412455/14474011154664524427946373126085988481658748083205070504932198000989141204992 binary64)) (not (<=.f64 x #s(literal 1548108335651699/2977131414714805823690030317109266572712515013375254774912983855843898524112477893944078543723575564536883288499266264815757728270805630976 binary64)))) #s(approx (+ x (* y (+ z x))) (fma.f64 y x x)) #s(approx (+ x (* y (+ z x))) (*.f64 y z)))
(if (<=.f64 x #s(literal -36999999999999997902848 binary64)) #s(approx (+ x (* y (+ z x))) #s(approx (+ (* y x) x) (*.f64 y x))) (if (<=.f64 x #s(literal 10500000000000000397715129551468014153619855937790206151160465384675591889879040 binary64)) #s(approx (+ x (* y (+ z x))) (*.f64 z y)) #s(approx (+ x (* y (+ z x))) #s(approx (+ (* y x) x) (*.f64 y x)))))
(if (or (<=.f64 x #s(literal -36999999999999997902848 binary64)) (not (<=.f64 x #s(literal 10500000000000000397715129551468014153619855937790206151160465384675591889879040 binary64)))) #s(approx (+ x (* y (+ z x))) #s(approx (+ (* y x) x) (*.f64 y x))) #s(approx (+ x (* y (+ z x))) (*.f64 y z)))
#s(approx (+ x (* y (+ z x))) #s(approx (+ (* y x) x) (*.f64 y x)))

soundness993.0ms (23.4%)

Memory
-5.1MiB live, 425.6MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0761700
12731700
28071700
322701700
447311700
563261700
673241700
777521700
080211529
0615
0915
14115
235115
3429715
0869614
070452
1249452
2749452
32187452
44758452
56511452
67644452
08186422
Stop Event
done
iter limit
node limit
iter limit
node limit
iter limit
iter limit
node limit
Compiler

Compiled 138 to 96 computations (30.4% saved)

preprocess41.0ms (1%)

Memory
22.5MiB live, 97.2MiB allocated
Compiler

Compiled 190 to 100 computations (47.4% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...