FastMath dist

Time bar (total: 3.4s)

start0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated

analyze0.0ms (0%)

Memory
0.8MiB live, 0.8MiB 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)

sample595.0ms (17.6%)

Memory
8.1MiB live, 821.2MiB allocated
Samples
367.0ms8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 174.0ms
ival-mult: 125.0ms (72% of total)
ival-add: 39.0ms (22.4% of total)
ival-true: 6.0ms (3.5% of total)
ival-assert: 3.0ms (1.7% of total)
Bogosity

explain67.0ms (2%)

Memory
-3.2MiB live, 95.0MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
90-0-(+.f64 (*.f64 d1 d2) (*.f64 d1 d3))
00-0-d2
00-0-d1
00-0-d3
00-0-(*.f64 d1 d2)
00-0-(*.f64 d1 d3)
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
+.f64(+.f64 (*.f64 d1 d2) (*.f64 d1 d3))nan-rescue90
(*.f64 d1 d2)overflow32
(*.f64 d1 d3)overflow26
Confusion
Predicted +Predicted -
+90
-0247
Precision
1.0
Recall
1.0
Confusion?
Predicted +Predicted MaybePredicted -
+900
-00247
Precision?
1.0
Recall?
1.0
Freqs
test
numberfreq
0247
19
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
34.0ms512×0valid
Compiler

Compiled 43 to 22 computations (48.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 17.0ms
ival-mult: 14.0ms (81.8% of total)
ival-add: 2.0ms (11.7% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

preprocess33.0ms (1%)

Memory
-8.6MiB live, 29.5MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02554
17448
217746
343146
474546
5104546
6105546
067
095
1145
2175
0175
Stop Event
iter limit
saturated
iter limit
saturated
Calls
Call 1
Inputs
(+.f64 (*.f64 d1 d2) (*.f64 d1 d3))
Outputs
(+.f64 (*.f64 d1 d2) (*.f64 d1 d3))
(*.f64 (+.f64 d3 d2) d1)
Symmetry

(negabs d1)

(sort d2 d3)

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.9MiB live, 0.9MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
96.5%
(+.f64 (*.f64 d1 d2) (*.f64 d1 d3))
Compiler

Compiled 7 to 6 computations (14.3% saved)

simplify2.0ms (0.1%)

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

Found 3 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 d1 d3)
cost-diff0
(*.f64 d1 d2)
cost-diff320
(+.f64 (*.f64 d1 d2) (*.f64 d1 d3))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0616
0914
11414
21714
01714
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(+.f64 (*.f64 d1 d2) (*.f64 d1 d3))
(*.f64 d1 d2)
d1
d2
(*.f64 d1 d3)
d3
Outputs
(+.f64 (*.f64 d1 d2) (*.f64 d1 d3))
(*.f64 (+.f64 d3 d2) d1)
(*.f64 d1 d2)
(*.f64 d2 d1)
d1
d2
(*.f64 d1 d3)
(*.f64 d3 d1)
d3

localize16.0ms (0.5%)

Memory
20.7MiB live, 20.7MiB allocated
Localize:

Found 3 expressions of interest:

NewMetricScoreProgram
accuracy0
(*.f64 d1 d3)
accuracy0
(*.f64 d1 d2)
accuracy1.8984333716604118
(+.f64 (*.f64 d1 d2) (*.f64 d1 d3))
Samples
12.0ms256×0valid
Compiler

Compiled 18 to 8 computations (55.6% saved)

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

series12.0ms (0.3%)

Memory
-27.8MiB live, 10.0MiB allocated
Counts
3 → 84
Calls
Call 1
Inputs
#s(alt (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (patch (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) #<representation binary64>) () ())
#s(alt (*.f64 d1 d2) (patch (*.f64 d1 d2) #<representation binary64>) () ())
#s(alt (*.f64 d1 d3) (patch (*.f64 d1 d3) #<representation binary64>) () ())
Outputs
#s(alt (* d1 d3) (taylor 0 d2) (#s(alt (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (patch (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) #<representation binary64>) () ())) ())
#s(alt (+ (* d1 d2) (* d1 d3)) (taylor 0 d2) (#s(alt (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (patch (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) #<representation binary64>) () ())) ())
#s(alt (+ (* d1 d2) (* d1 d3)) (taylor 0 d2) (#s(alt (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (patch (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) #<representation binary64>) () ())) ())
#s(alt (+ (* d1 d2) (* d1 d3)) (taylor 0 d2) (#s(alt (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (patch (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor 0 d2) (#s(alt (*.f64 d1 d2) (patch (*.f64 d1 d2) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor 0 d2) (#s(alt (*.f64 d1 d2) (patch (*.f64 d1 d2) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor 0 d2) (#s(alt (*.f64 d1 d2) (patch (*.f64 d1 d2) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor 0 d2) (#s(alt (*.f64 d1 d2) (patch (*.f64 d1 d2) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor inf d2) (#s(alt (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (patch (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) #<representation binary64>) () ())) ())
#s(alt (* d2 (+ d1 (/ (* d1 d3) d2))) (taylor inf d2) (#s(alt (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (patch (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) #<representation binary64>) () ())) ())
#s(alt (* d2 (+ d1 (/ (* d1 d3) d2))) (taylor inf d2) (#s(alt (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (patch (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) #<representation binary64>) () ())) ())
#s(alt (* d2 (+ d1 (/ (* d1 d3) d2))) (taylor inf d2) (#s(alt (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (patch (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor inf d2) (#s(alt (*.f64 d1 d2) (patch (*.f64 d1 d2) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor inf d2) (#s(alt (*.f64 d1 d2) (patch (*.f64 d1 d2) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor inf d2) (#s(alt (*.f64 d1 d2) (patch (*.f64 d1 d2) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor inf d2) (#s(alt (*.f64 d1 d2) (patch (*.f64 d1 d2) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor -inf d2) (#s(alt (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (patch (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* d2 (+ (* -1 d1) (* -1 (/ (* d1 d3) d2))))) (taylor -inf d2) (#s(alt (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (patch (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* d2 (+ (* -1 d1) (* -1 (/ (* d1 d3) d2))))) (taylor -inf d2) (#s(alt (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (patch (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* d2 (+ (* -1 d1) (* -1 (/ (* d1 d3) d2))))) (taylor -inf d2) (#s(alt (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (patch (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor -inf d2) (#s(alt (*.f64 d1 d2) (patch (*.f64 d1 d2) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor -inf d2) (#s(alt (*.f64 d1 d2) (patch (*.f64 d1 d2) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor -inf d2) (#s(alt (*.f64 d1 d2) (patch (*.f64 d1 d2) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor -inf d2) (#s(alt (*.f64 d1 d2) (patch (*.f64 d1 d2) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor 0 d3) (#s(alt (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (patch (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) #<representation binary64>) () ())) ())
#s(alt (+ (* d1 d2) (* d1 d3)) (taylor 0 d3) (#s(alt (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (patch (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) #<representation binary64>) () ())) ())
#s(alt (+ (* d1 d2) (* d1 d3)) (taylor 0 d3) (#s(alt (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (patch (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) #<representation binary64>) () ())) ())
#s(alt (+ (* d1 d2) (* d1 d3)) (taylor 0 d3) (#s(alt (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (patch (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor 0 d3) (#s(alt (*.f64 d1 d3) (patch (*.f64 d1 d3) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor 0 d3) (#s(alt (*.f64 d1 d3) (patch (*.f64 d1 d3) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor 0 d3) (#s(alt (*.f64 d1 d3) (patch (*.f64 d1 d3) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor 0 d3) (#s(alt (*.f64 d1 d3) (patch (*.f64 d1 d3) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor inf d3) (#s(alt (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (patch (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) #<representation binary64>) () ())) ())
#s(alt (* d3 (+ d1 (/ (* d1 d2) d3))) (taylor inf d3) (#s(alt (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (patch (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) #<representation binary64>) () ())) ())
#s(alt (* d3 (+ d1 (/ (* d1 d2) d3))) (taylor inf d3) (#s(alt (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (patch (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) #<representation binary64>) () ())) ())
#s(alt (* d3 (+ d1 (/ (* d1 d2) d3))) (taylor inf d3) (#s(alt (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (patch (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor inf d3) (#s(alt (*.f64 d1 d3) (patch (*.f64 d1 d3) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor inf d3) (#s(alt (*.f64 d1 d3) (patch (*.f64 d1 d3) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor inf d3) (#s(alt (*.f64 d1 d3) (patch (*.f64 d1 d3) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor inf d3) (#s(alt (*.f64 d1 d3) (patch (*.f64 d1 d3) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor -inf d3) (#s(alt (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (patch (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* d3 (+ (* -1 d1) (* -1 (/ (* d1 d2) d3))))) (taylor -inf d3) (#s(alt (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (patch (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* d3 (+ (* -1 d1) (* -1 (/ (* d1 d2) d3))))) (taylor -inf d3) (#s(alt (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (patch (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* d3 (+ (* -1 d1) (* -1 (/ (* d1 d2) d3))))) (taylor -inf d3) (#s(alt (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (patch (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor -inf d3) (#s(alt (*.f64 d1 d3) (patch (*.f64 d1 d3) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor -inf d3) (#s(alt (*.f64 d1 d3) (patch (*.f64 d1 d3) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor -inf d3) (#s(alt (*.f64 d1 d3) (patch (*.f64 d1 d3) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor -inf d3) (#s(alt (*.f64 d1 d3) (patch (*.f64 d1 d3) #<representation binary64>) () ())) ())
#s(alt (* d1 (+ d2 d3)) (taylor 0 d1) (#s(alt (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (patch (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) #<representation binary64>) () ())) ())
#s(alt (* d1 (+ d2 d3)) (taylor 0 d1) (#s(alt (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (patch (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) #<representation binary64>) () ())) ())
#s(alt (* d1 (+ d2 d3)) (taylor 0 d1) (#s(alt (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (patch (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) #<representation binary64>) () ())) ())
#s(alt (* d1 (+ d2 d3)) (taylor 0 d1) (#s(alt (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (patch (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor 0 d1) (#s(alt (*.f64 d1 d2) (patch (*.f64 d1 d2) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor 0 d1) (#s(alt (*.f64 d1 d2) (patch (*.f64 d1 d2) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor 0 d1) (#s(alt (*.f64 d1 d2) (patch (*.f64 d1 d2) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor 0 d1) (#s(alt (*.f64 d1 d2) (patch (*.f64 d1 d2) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor 0 d1) (#s(alt (*.f64 d1 d3) (patch (*.f64 d1 d3) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor 0 d1) (#s(alt (*.f64 d1 d3) (patch (*.f64 d1 d3) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor 0 d1) (#s(alt (*.f64 d1 d3) (patch (*.f64 d1 d3) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor 0 d1) (#s(alt (*.f64 d1 d3) (patch (*.f64 d1 d3) #<representation binary64>) () ())) ())
#s(alt (* d1 (+ d2 d3)) (taylor inf d1) (#s(alt (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (patch (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) #<representation binary64>) () ())) ())
#s(alt (* d1 (+ d2 d3)) (taylor inf d1) (#s(alt (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (patch (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) #<representation binary64>) () ())) ())
#s(alt (* d1 (+ d2 d3)) (taylor inf d1) (#s(alt (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (patch (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) #<representation binary64>) () ())) ())
#s(alt (* d1 (+ d2 d3)) (taylor inf d1) (#s(alt (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (patch (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor inf d1) (#s(alt (*.f64 d1 d2) (patch (*.f64 d1 d2) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor inf d1) (#s(alt (*.f64 d1 d2) (patch (*.f64 d1 d2) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor inf d1) (#s(alt (*.f64 d1 d2) (patch (*.f64 d1 d2) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor inf d1) (#s(alt (*.f64 d1 d2) (patch (*.f64 d1 d2) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor inf d1) (#s(alt (*.f64 d1 d3) (patch (*.f64 d1 d3) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor inf d1) (#s(alt (*.f64 d1 d3) (patch (*.f64 d1 d3) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor inf d1) (#s(alt (*.f64 d1 d3) (patch (*.f64 d1 d3) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor inf d1) (#s(alt (*.f64 d1 d3) (patch (*.f64 d1 d3) #<representation binary64>) () ())) ())
#s(alt (* -1 (* d1 (+ (* -1 d2) (* -1 d3)))) (taylor -inf d1) (#s(alt (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (patch (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* d1 (+ (* -1 d2) (* -1 d3)))) (taylor -inf d1) (#s(alt (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (patch (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* d1 (+ (* -1 d2) (* -1 d3)))) (taylor -inf d1) (#s(alt (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (patch (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* d1 (+ (* -1 d2) (* -1 d3)))) (taylor -inf d1) (#s(alt (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (patch (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor -inf d1) (#s(alt (*.f64 d1 d2) (patch (*.f64 d1 d2) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor -inf d1) (#s(alt (*.f64 d1 d2) (patch (*.f64 d1 d2) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor -inf d1) (#s(alt (*.f64 d1 d2) (patch (*.f64 d1 d2) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor -inf d1) (#s(alt (*.f64 d1 d2) (patch (*.f64 d1 d2) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor -inf d1) (#s(alt (*.f64 d1 d3) (patch (*.f64 d1 d3) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor -inf d1) (#s(alt (*.f64 d1 d3) (patch (*.f64 d1 d3) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor -inf d1) (#s(alt (*.f64 d1 d3) (patch (*.f64 d1 d3) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor -inf d1) (#s(alt (*.f64 d1 d3) (patch (*.f64 d1 d3) #<representation binary64>) () ())) ())
Calls

9 calls:

TimeVariablePointExpression
5.0ms
d2
@-inf
((+ (* d1 d2) (* d1 d3)) (* d1 d2) (* d1 d3))
1.0ms
d3
@0
((+ (* d1 d2) (* d1 d3)) (* d1 d2) (* d1 d3))
1.0ms
d1
@0
((+ (* d1 d2) (* d1 d3)) (* d1 d2) (* d1 d3))
1.0ms
d1
@-inf
((+ (* d1 d2) (* d1 d3)) (* d1 d2) (* d1 d3))
1.0ms
d1
@inf
((+ (* d1 d2) (* d1 d3)) (* d1 d2) (* d1 d3))

simplify421.0ms (12.5%)

Memory
6.7MiB live, 163.6MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
029312
1103312
2297312
3727312
42233312
54347312
65478312
76122312
86309312
96426312
106730312
116770312
126803312
137013312
147027312
157032312
167035312
177037312
187037312
08429312
Stop Event
iter limit
node limit
Counts
84 → 84
Calls
Call 1
Inputs
(* d1 d3)
(+ (* d1 d2) (* d1 d3))
(+ (* d1 d2) (* d1 d3))
(+ (* d1 d2) (* d1 d3))
(* d1 d2)
(* d1 d2)
(* d1 d2)
(* d1 d2)
(* d1 d2)
(* d2 (+ d1 (/ (* d1 d3) d2)))
(* d2 (+ d1 (/ (* d1 d3) d2)))
(* d2 (+ d1 (/ (* d1 d3) d2)))
(* d1 d2)
(* d1 d2)
(* d1 d2)
(* d1 d2)
(* d1 d2)
(* -1 (* d2 (+ (* -1 d1) (* -1 (/ (* d1 d3) d2)))))
(* -1 (* d2 (+ (* -1 d1) (* -1 (/ (* d1 d3) d2)))))
(* -1 (* d2 (+ (* -1 d1) (* -1 (/ (* d1 d3) d2)))))
(* d1 d2)
(* d1 d2)
(* d1 d2)
(* d1 d2)
(* d1 d2)
(+ (* d1 d2) (* d1 d3))
(+ (* d1 d2) (* d1 d3))
(+ (* d1 d2) (* d1 d3))
(* d1 d3)
(* d1 d3)
(* d1 d3)
(* d1 d3)
(* d1 d3)
(* d3 (+ d1 (/ (* d1 d2) d3)))
(* d3 (+ d1 (/ (* d1 d2) d3)))
(* d3 (+ d1 (/ (* d1 d2) d3)))
(* d1 d3)
(* d1 d3)
(* d1 d3)
(* d1 d3)
(* d1 d3)
(* -1 (* d3 (+ (* -1 d1) (* -1 (/ (* d1 d2) d3)))))
(* -1 (* d3 (+ (* -1 d1) (* -1 (/ (* d1 d2) d3)))))
(* -1 (* d3 (+ (* -1 d1) (* -1 (/ (* d1 d2) d3)))))
(* d1 d3)
(* d1 d3)
(* d1 d3)
(* d1 d3)
(* d1 (+ d2 d3))
(* d1 (+ d2 d3))
(* d1 (+ d2 d3))
(* d1 (+ d2 d3))
(* d1 d2)
(* d1 d2)
(* d1 d2)
(* d1 d2)
(* d1 d3)
(* d1 d3)
(* d1 d3)
(* d1 d3)
(* d1 (+ d2 d3))
(* d1 (+ d2 d3))
(* d1 (+ d2 d3))
(* d1 (+ d2 d3))
(* d1 d2)
(* d1 d2)
(* d1 d2)
(* d1 d2)
(* d1 d3)
(* d1 d3)
(* d1 d3)
(* d1 d3)
(* -1 (* d1 (+ (* -1 d2) (* -1 d3))))
(* -1 (* d1 (+ (* -1 d2) (* -1 d3))))
(* -1 (* d1 (+ (* -1 d2) (* -1 d3))))
(* -1 (* d1 (+ (* -1 d2) (* -1 d3))))
(* d1 d2)
(* d1 d2)
(* d1 d2)
(* d1 d2)
(* d1 d3)
(* d1 d3)
(* d1 d3)
(* d1 d3)
Outputs
(* d1 d3)
(*.f64 d3 d1)
(+ (* d1 d2) (* d1 d3))
(*.f64 (+.f64 d2 d3) d1)
(+ (* d1 d2) (* d1 d3))
(*.f64 (+.f64 d2 d3) d1)
(+ (* d1 d2) (* d1 d3))
(*.f64 (+.f64 d2 d3) d1)
(* d1 d2)
(*.f64 d2 d1)
(* d1 d2)
(*.f64 d2 d1)
(* d1 d2)
(*.f64 d2 d1)
(* d1 d2)
(*.f64 d2 d1)
(* d1 d2)
(*.f64 d2 d1)
(* d2 (+ d1 (/ (* d1 d3) d2)))
(*.f64 (+.f64 d2 d3) d1)
(* d2 (+ d1 (/ (* d1 d3) d2)))
(*.f64 (+.f64 d2 d3) d1)
(* d2 (+ d1 (/ (* d1 d3) d2)))
(*.f64 (+.f64 d2 d3) d1)
(* d1 d2)
(*.f64 d2 d1)
(* d1 d2)
(*.f64 d2 d1)
(* d1 d2)
(*.f64 d2 d1)
(* d1 d2)
(*.f64 d2 d1)
(* d1 d2)
(*.f64 d2 d1)
(* -1 (* d2 (+ (* -1 d1) (* -1 (/ (* d1 d3) d2)))))
(*.f64 (+.f64 d2 d3) d1)
(* -1 (* d2 (+ (* -1 d1) (* -1 (/ (* d1 d3) d2)))))
(*.f64 (+.f64 d2 d3) d1)
(* -1 (* d2 (+ (* -1 d1) (* -1 (/ (* d1 d3) d2)))))
(*.f64 (+.f64 d2 d3) d1)
(* d1 d2)
(*.f64 d2 d1)
(* d1 d2)
(*.f64 d2 d1)
(* d1 d2)
(*.f64 d2 d1)
(* d1 d2)
(*.f64 d2 d1)
(* d1 d2)
(*.f64 d2 d1)
(+ (* d1 d2) (* d1 d3))
(*.f64 (+.f64 d2 d3) d1)
(+ (* d1 d2) (* d1 d3))
(*.f64 (+.f64 d2 d3) d1)
(+ (* d1 d2) (* d1 d3))
(*.f64 (+.f64 d2 d3) d1)
(* d1 d3)
(*.f64 d3 d1)
(* d1 d3)
(*.f64 d3 d1)
(* d1 d3)
(*.f64 d3 d1)
(* d1 d3)
(*.f64 d3 d1)
(* d1 d3)
(*.f64 d3 d1)
(* d3 (+ d1 (/ (* d1 d2) d3)))
(*.f64 (+.f64 d2 d3) d1)
(* d3 (+ d1 (/ (* d1 d2) d3)))
(*.f64 (+.f64 d2 d3) d1)
(* d3 (+ d1 (/ (* d1 d2) d3)))
(*.f64 (+.f64 d2 d3) d1)
(* d1 d3)
(*.f64 d3 d1)
(* d1 d3)
(*.f64 d3 d1)
(* d1 d3)
(*.f64 d3 d1)
(* d1 d3)
(*.f64 d3 d1)
(* d1 d3)
(*.f64 d3 d1)
(* -1 (* d3 (+ (* -1 d1) (* -1 (/ (* d1 d2) d3)))))
(*.f64 (+.f64 d2 d3) d1)
(* -1 (* d3 (+ (* -1 d1) (* -1 (/ (* d1 d2) d3)))))
(*.f64 (+.f64 d2 d3) d1)
(* -1 (* d3 (+ (* -1 d1) (* -1 (/ (* d1 d2) d3)))))
(*.f64 (+.f64 d2 d3) d1)
(* d1 d3)
(*.f64 d3 d1)
(* d1 d3)
(*.f64 d3 d1)
(* d1 d3)
(*.f64 d3 d1)
(* d1 d3)
(*.f64 d3 d1)
(* d1 (+ d2 d3))
(*.f64 (+.f64 d2 d3) d1)
(* d1 (+ d2 d3))
(*.f64 (+.f64 d2 d3) d1)
(* d1 (+ d2 d3))
(*.f64 (+.f64 d2 d3) d1)
(* d1 (+ d2 d3))
(*.f64 (+.f64 d2 d3) d1)
(* d1 d2)
(*.f64 d2 d1)
(* d1 d2)
(*.f64 d2 d1)
(* d1 d2)
(*.f64 d2 d1)
(* d1 d2)
(*.f64 d2 d1)
(* d1 d3)
(*.f64 d3 d1)
(* d1 d3)
(*.f64 d3 d1)
(* d1 d3)
(*.f64 d3 d1)
(* d1 d3)
(*.f64 d3 d1)
(* d1 (+ d2 d3))
(*.f64 (+.f64 d2 d3) d1)
(* d1 (+ d2 d3))
(*.f64 (+.f64 d2 d3) d1)
(* d1 (+ d2 d3))
(*.f64 (+.f64 d2 d3) d1)
(* d1 (+ d2 d3))
(*.f64 (+.f64 d2 d3) d1)
(* d1 d2)
(*.f64 d2 d1)
(* d1 d2)
(*.f64 d2 d1)
(* d1 d2)
(*.f64 d2 d1)
(* d1 d2)
(*.f64 d2 d1)
(* d1 d3)
(*.f64 d3 d1)
(* d1 d3)
(*.f64 d3 d1)
(* d1 d3)
(*.f64 d3 d1)
(* d1 d3)
(*.f64 d3 d1)
(* -1 (* d1 (+ (* -1 d2) (* -1 d3))))
(*.f64 (+.f64 d2 d3) d1)
(* -1 (* d1 (+ (* -1 d2) (* -1 d3))))
(*.f64 (+.f64 d2 d3) d1)
(* -1 (* d1 (+ (* -1 d2) (* -1 d3))))
(*.f64 (+.f64 d2 d3) d1)
(* -1 (* d1 (+ (* -1 d2) (* -1 d3))))
(*.f64 (+.f64 d2 d3) d1)
(* d1 d2)
(*.f64 d2 d1)
(* d1 d2)
(*.f64 d2 d1)
(* d1 d2)
(*.f64 d2 d1)
(* d1 d2)
(*.f64 d2 d1)
(* d1 d3)
(*.f64 d3 d1)
(* d1 d3)
(*.f64 d3 d1)
(* d1 d3)
(*.f64 d3 d1)
(* d1 d3)
(*.f64 d3 d1)

rewrite253.0ms (7.5%)

Memory
25.9MiB live, 180.9MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0613
0911
12711
219111
3199311
0814111
Stop Event
iter limit
node limit
iter limit
Counts
3 → 216
Calls
Call 1
Inputs
(+.f64 (*.f64 d1 d2) (*.f64 d1 d3))
(*.f64 d1 d2)
(*.f64 d1 d3)
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>

eval75.0ms (2.2%)

Memory
-27.5MiB live, 58.1MiB allocated
Compiler

Compiled 7 188 to 618 computations (91.4% saved)

prune5.0ms (0.2%)

Memory
16.1MiB live, 16.1MiB allocated
Pruning

4 alts after pruning (4 fresh and 0 done)

PrunedKeptTotal
New2964300
Fresh000
Picked101
Done000
Total2974301
Accuracy
100.0%
Counts
301 → 4
Alt Table
Click to see full alt table
StatusAccuracyProgram
97.3%
(fma.f64 d3 d1 (*.f64 d2 d1))
100.0%
(*.f64 (+.f64 d3 d2) d1)
54.4%
#s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1))
54.0%
#s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1))
Compiler

Compiled 19 to 20 computations (-5.3% saved)

simplify3.0ms (0.1%)

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

Found 8 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 d2 d1)
cost-diff192
(fma.f64 d3 d1 (*.f64 d2 d1))
cost-diff0
(+.f64 d3 d2)
cost-diff0
(*.f64 (+.f64 d3 d2) d1)
cost-diff0
(*.f64 d3 d1)
cost-diff0
#s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1))
cost-diff0
(*.f64 d2 d1)
cost-diff0
#s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01355
01850
12350
02350
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
#s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1))
(*.f64 d2 d1)
d2
d1
#s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1))
(*.f64 d3 d1)
d3
d1
(*.f64 (+.f64 d3 d2) d1)
(+.f64 d3 d2)
d3
d2
d1
(fma.f64 d3 d1 (*.f64 d2 d1))
d3
d1
(*.f64 d2 d1)
d2
Outputs
#s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1))
(*.f64 d2 d1)
d2
d1
#s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1))
(*.f64 d3 d1)
d3
d1
(*.f64 (+.f64 d3 d2) d1)
(+.f64 d3 d2)
d3
d2
d1
(fma.f64 d3 d1 (*.f64 d2 d1))
(*.f64 (+.f64 d3 d2) d1)
d3
d1
(*.f64 d2 d1)
d2

localize34.0ms (1%)

Memory
-14.8MiB live, 58.2MiB allocated
Localize:

Found 8 expressions of interest:

NewMetricScoreProgram
accuracy0
(*.f64 d2 d1)
accuracy1.7499807332389217
(fma.f64 d3 d1 (*.f64 d2 d1))
accuracy0
(+.f64 d3 d2)
accuracy0.00390625
(*.f64 (+.f64 d3 d2) d1)
accuracy0
(*.f64 d3 d1)
accuracy29.183235913413096
#s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1))
accuracy0
(*.f64 d2 d1)
accuracy29.420587164498276
#s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1))
Samples
23.0ms256×0valid
Compiler

Compiled 50 to 13 computations (74% saved)

Precisions
Click to see histograms. Total time spent on operations: 14.0ms
ival-mult: 10.0ms (73.4% of total)
ival-add: 3.0ms (22% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series19.0ms (0.6%)

Memory
-17.5MiB live, 33.1MiB allocated
Counts
7 → 216
Calls
Call 1
Inputs
#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) #<representation binary64>) () ())
#s(alt (*.f64 d2 d1) (patch (*.f64 d2 d1) #<representation binary64>) () ())
#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) #<representation binary64>) () ())
#s(alt (*.f64 d3 d1) (patch (*.f64 d3 d1) #<representation binary64>) () ())
#s(alt (*.f64 (+.f64 d3 d2) d1) (patch (*.f64 (+.f64 d3 d2) d1) #<representation binary64>) () ())
#s(alt (+.f64 d3 d2) (patch (+.f64 d3 d2) #<representation binary64>) () ())
#s(alt (fma.f64 d3 d1 (*.f64 d2 d1)) (patch (fma.f64 d3 d1 (*.f64 d2 d1)) #<representation binary64>) () ())
Outputs
#s(alt (* d1 d3) (taylor 0 d2) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (+ (* d1 d2) (* d1 d3)) (taylor 0 d2) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (+ (* d1 d2) (* d1 d3)) (taylor 0 d2) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (+ (* d1 d2) (* d1 d3)) (taylor 0 d2) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor 0 d2) (#s(alt (*.f64 d2 d1) (patch (*.f64 d2 d1) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor 0 d2) (#s(alt (*.f64 d2 d1) (patch (*.f64 d2 d1) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor 0 d2) (#s(alt (*.f64 d2 d1) (patch (*.f64 d2 d1) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor 0 d2) (#s(alt (*.f64 d2 d1) (patch (*.f64 d2 d1) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor 0 d2) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) #<representation binary64>) () ())) ())
#s(alt (+ (* d1 d2) (* d1 d3)) (taylor 0 d2) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) #<representation binary64>) () ())) ())
#s(alt (+ (* d1 d2) (* d1 d3)) (taylor 0 d2) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) #<representation binary64>) () ())) ())
#s(alt (+ (* d1 d2) (* d1 d3)) (taylor 0 d2) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor 0 d2) (#s(alt (*.f64 (+.f64 d3 d2) d1) (patch (*.f64 (+.f64 d3 d2) d1) #<representation binary64>) () ())) ())
#s(alt (+ (* d1 d2) (* d1 d3)) (taylor 0 d2) (#s(alt (*.f64 (+.f64 d3 d2) d1) (patch (*.f64 (+.f64 d3 d2) d1) #<representation binary64>) () ())) ())
#s(alt (+ (* d1 d2) (* d1 d3)) (taylor 0 d2) (#s(alt (*.f64 (+.f64 d3 d2) d1) (patch (*.f64 (+.f64 d3 d2) d1) #<representation binary64>) () ())) ())
#s(alt (+ (* d1 d2) (* d1 d3)) (taylor 0 d2) (#s(alt (*.f64 (+.f64 d3 d2) d1) (patch (*.f64 (+.f64 d3 d2) d1) #<representation binary64>) () ())) ())
#s(alt d3 (taylor 0 d2) (#s(alt (+.f64 d3 d2) (patch (+.f64 d3 d2) #<representation binary64>) () ())) ())
#s(alt (+ d2 d3) (taylor 0 d2) (#s(alt (+.f64 d3 d2) (patch (+.f64 d3 d2) #<representation binary64>) () ())) ())
#s(alt (+ d2 d3) (taylor 0 d2) (#s(alt (+.f64 d3 d2) (patch (+.f64 d3 d2) #<representation binary64>) () ())) ())
#s(alt (+ d2 d3) (taylor 0 d2) (#s(alt (+.f64 d3 d2) (patch (+.f64 d3 d2) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor 0 d2) (#s(alt (fma.f64 d3 d1 (*.f64 d2 d1)) (patch (fma.f64 d3 d1 (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (+ (* d1 d2) (* d1 d3)) (taylor 0 d2) (#s(alt (fma.f64 d3 d1 (*.f64 d2 d1)) (patch (fma.f64 d3 d1 (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (+ (* d1 d2) (* d1 d3)) (taylor 0 d2) (#s(alt (fma.f64 d3 d1 (*.f64 d2 d1)) (patch (fma.f64 d3 d1 (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (+ (* d1 d2) (* d1 d3)) (taylor 0 d2) (#s(alt (fma.f64 d3 d1 (*.f64 d2 d1)) (patch (fma.f64 d3 d1 (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor inf d2) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* d2 (+ d1 (/ (* d1 d3) d2))) (taylor inf d2) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* d2 (+ d1 (/ (* d1 d3) d2))) (taylor inf d2) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* d2 (+ d1 (/ (* d1 d3) d2))) (taylor inf d2) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor inf d2) (#s(alt (*.f64 d2 d1) (patch (*.f64 d2 d1) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor inf d2) (#s(alt (*.f64 d2 d1) (patch (*.f64 d2 d1) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor inf d2) (#s(alt (*.f64 d2 d1) (patch (*.f64 d2 d1) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor inf d2) (#s(alt (*.f64 d2 d1) (patch (*.f64 d2 d1) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor inf d2) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) #<representation binary64>) () ())) ())
#s(alt (* d2 (+ d1 (/ (* d1 d3) d2))) (taylor inf d2) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) #<representation binary64>) () ())) ())
#s(alt (* d2 (+ d1 (/ (* d1 d3) d2))) (taylor inf d2) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) #<representation binary64>) () ())) ())
#s(alt (* d2 (+ d1 (/ (* d1 d3) d2))) (taylor inf d2) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor inf d2) (#s(alt (*.f64 (+.f64 d3 d2) d1) (patch (*.f64 (+.f64 d3 d2) d1) #<representation binary64>) () ())) ())
#s(alt (* d2 (+ d1 (/ (* d1 d3) d2))) (taylor inf d2) (#s(alt (*.f64 (+.f64 d3 d2) d1) (patch (*.f64 (+.f64 d3 d2) d1) #<representation binary64>) () ())) ())
#s(alt (* d2 (+ d1 (/ (* d1 d3) d2))) (taylor inf d2) (#s(alt (*.f64 (+.f64 d3 d2) d1) (patch (*.f64 (+.f64 d3 d2) d1) #<representation binary64>) () ())) ())
#s(alt (* d2 (+ d1 (/ (* d1 d3) d2))) (taylor inf d2) (#s(alt (*.f64 (+.f64 d3 d2) d1) (patch (*.f64 (+.f64 d3 d2) d1) #<representation binary64>) () ())) ())
#s(alt d2 (taylor inf d2) (#s(alt (+.f64 d3 d2) (patch (+.f64 d3 d2) #<representation binary64>) () ())) ())
#s(alt (* d2 (+ 1 (/ d3 d2))) (taylor inf d2) (#s(alt (+.f64 d3 d2) (patch (+.f64 d3 d2) #<representation binary64>) () ())) ())
#s(alt (* d2 (+ 1 (/ d3 d2))) (taylor inf d2) (#s(alt (+.f64 d3 d2) (patch (+.f64 d3 d2) #<representation binary64>) () ())) ())
#s(alt (* d2 (+ 1 (/ d3 d2))) (taylor inf d2) (#s(alt (+.f64 d3 d2) (patch (+.f64 d3 d2) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor inf d2) (#s(alt (fma.f64 d3 d1 (*.f64 d2 d1)) (patch (fma.f64 d3 d1 (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* d2 (+ d1 (/ (* d1 d3) d2))) (taylor inf d2) (#s(alt (fma.f64 d3 d1 (*.f64 d2 d1)) (patch (fma.f64 d3 d1 (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* d2 (+ d1 (/ (* d1 d3) d2))) (taylor inf d2) (#s(alt (fma.f64 d3 d1 (*.f64 d2 d1)) (patch (fma.f64 d3 d1 (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* d2 (+ d1 (/ (* d1 d3) d2))) (taylor inf d2) (#s(alt (fma.f64 d3 d1 (*.f64 d2 d1)) (patch (fma.f64 d3 d1 (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor -inf d2) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* d2 (+ (* -1 d1) (* -1 (/ (* d1 d3) d2))))) (taylor -inf d2) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* d2 (+ (* -1 d1) (* -1 (/ (* d1 d3) d2))))) (taylor -inf d2) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* d2 (+ (* -1 d1) (* -1 (/ (* d1 d3) d2))))) (taylor -inf d2) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor -inf d2) (#s(alt (*.f64 d2 d1) (patch (*.f64 d2 d1) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor -inf d2) (#s(alt (*.f64 d2 d1) (patch (*.f64 d2 d1) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor -inf d2) (#s(alt (*.f64 d2 d1) (patch (*.f64 d2 d1) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor -inf d2) (#s(alt (*.f64 d2 d1) (patch (*.f64 d2 d1) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor -inf d2) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* d2 (+ (* -1 d1) (* -1 (/ (* d1 d3) d2))))) (taylor -inf d2) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* d2 (+ (* -1 d1) (* -1 (/ (* d1 d3) d2))))) (taylor -inf d2) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* d2 (+ (* -1 d1) (* -1 (/ (* d1 d3) d2))))) (taylor -inf d2) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor -inf d2) (#s(alt (*.f64 (+.f64 d3 d2) d1) (patch (*.f64 (+.f64 d3 d2) d1) #<representation binary64>) () ())) ())
#s(alt (* -1 (* d2 (+ (* -1 d1) (* -1 (/ (* d1 d3) d2))))) (taylor -inf d2) (#s(alt (*.f64 (+.f64 d3 d2) d1) (patch (*.f64 (+.f64 d3 d2) d1) #<representation binary64>) () ())) ())
#s(alt (* -1 (* d2 (+ (* -1 d1) (* -1 (/ (* d1 d3) d2))))) (taylor -inf d2) (#s(alt (*.f64 (+.f64 d3 d2) d1) (patch (*.f64 (+.f64 d3 d2) d1) #<representation binary64>) () ())) ())
#s(alt (* -1 (* d2 (+ (* -1 d1) (* -1 (/ (* d1 d3) d2))))) (taylor -inf d2) (#s(alt (*.f64 (+.f64 d3 d2) d1) (patch (*.f64 (+.f64 d3 d2) d1) #<representation binary64>) () ())) ())
#s(alt d2 (taylor -inf d2) (#s(alt (+.f64 d3 d2) (patch (+.f64 d3 d2) #<representation binary64>) () ())) ())
#s(alt (* -1 (* d2 (- (* -1 (/ d3 d2)) 1))) (taylor -inf d2) (#s(alt (+.f64 d3 d2) (patch (+.f64 d3 d2) #<representation binary64>) () ())) ())
#s(alt (* -1 (* d2 (- (* -1 (/ d3 d2)) 1))) (taylor -inf d2) (#s(alt (+.f64 d3 d2) (patch (+.f64 d3 d2) #<representation binary64>) () ())) ())
#s(alt (* -1 (* d2 (- (* -1 (/ d3 d2)) 1))) (taylor -inf d2) (#s(alt (+.f64 d3 d2) (patch (+.f64 d3 d2) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor -inf d2) (#s(alt (fma.f64 d3 d1 (*.f64 d2 d1)) (patch (fma.f64 d3 d1 (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* d2 (+ (* -1 d1) (* -1 (/ (* d1 d3) d2))))) (taylor -inf d2) (#s(alt (fma.f64 d3 d1 (*.f64 d2 d1)) (patch (fma.f64 d3 d1 (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* d2 (+ (* -1 d1) (* -1 (/ (* d1 d3) d2))))) (taylor -inf d2) (#s(alt (fma.f64 d3 d1 (*.f64 d2 d1)) (patch (fma.f64 d3 d1 (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* d2 (+ (* -1 d1) (* -1 (/ (* d1 d3) d2))))) (taylor -inf d2) (#s(alt (fma.f64 d3 d1 (*.f64 d2 d1)) (patch (fma.f64 d3 d1 (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor 0 d3) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (+ (* d1 d2) (* d1 d3)) (taylor 0 d3) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (+ (* d1 d2) (* d1 d3)) (taylor 0 d3) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (+ (* d1 d2) (* d1 d3)) (taylor 0 d3) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor 0 d3) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) #<representation binary64>) () ())) ())
#s(alt (+ (* d1 d2) (* d1 d3)) (taylor 0 d3) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) #<representation binary64>) () ())) ())
#s(alt (+ (* d1 d2) (* d1 d3)) (taylor 0 d3) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) #<representation binary64>) () ())) ())
#s(alt (+ (* d1 d2) (* d1 d3)) (taylor 0 d3) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor 0 d3) (#s(alt (*.f64 d3 d1) (patch (*.f64 d3 d1) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor 0 d3) (#s(alt (*.f64 d3 d1) (patch (*.f64 d3 d1) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor 0 d3) (#s(alt (*.f64 d3 d1) (patch (*.f64 d3 d1) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor 0 d3) (#s(alt (*.f64 d3 d1) (patch (*.f64 d3 d1) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor 0 d3) (#s(alt (*.f64 (+.f64 d3 d2) d1) (patch (*.f64 (+.f64 d3 d2) d1) #<representation binary64>) () ())) ())
#s(alt (+ (* d1 d2) (* d1 d3)) (taylor 0 d3) (#s(alt (*.f64 (+.f64 d3 d2) d1) (patch (*.f64 (+.f64 d3 d2) d1) #<representation binary64>) () ())) ())
#s(alt (+ (* d1 d2) (* d1 d3)) (taylor 0 d3) (#s(alt (*.f64 (+.f64 d3 d2) d1) (patch (*.f64 (+.f64 d3 d2) d1) #<representation binary64>) () ())) ())
#s(alt (+ (* d1 d2) (* d1 d3)) (taylor 0 d3) (#s(alt (*.f64 (+.f64 d3 d2) d1) (patch (*.f64 (+.f64 d3 d2) d1) #<representation binary64>) () ())) ())
#s(alt d2 (taylor 0 d3) (#s(alt (+.f64 d3 d2) (patch (+.f64 d3 d2) #<representation binary64>) () ())) ())
#s(alt (+ d2 d3) (taylor 0 d3) (#s(alt (+.f64 d3 d2) (patch (+.f64 d3 d2) #<representation binary64>) () ())) ())
#s(alt (+ d2 d3) (taylor 0 d3) (#s(alt (+.f64 d3 d2) (patch (+.f64 d3 d2) #<representation binary64>) () ())) ())
#s(alt (+ d2 d3) (taylor 0 d3) (#s(alt (+.f64 d3 d2) (patch (+.f64 d3 d2) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor 0 d3) (#s(alt (fma.f64 d3 d1 (*.f64 d2 d1)) (patch (fma.f64 d3 d1 (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (+ (* d1 d2) (* d1 d3)) (taylor 0 d3) (#s(alt (fma.f64 d3 d1 (*.f64 d2 d1)) (patch (fma.f64 d3 d1 (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (+ (* d1 d2) (* d1 d3)) (taylor 0 d3) (#s(alt (fma.f64 d3 d1 (*.f64 d2 d1)) (patch (fma.f64 d3 d1 (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (+ (* d1 d2) (* d1 d3)) (taylor 0 d3) (#s(alt (fma.f64 d3 d1 (*.f64 d2 d1)) (patch (fma.f64 d3 d1 (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor inf d3) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* d3 (+ d1 (/ (* d1 d2) d3))) (taylor inf d3) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* d3 (+ d1 (/ (* d1 d2) d3))) (taylor inf d3) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* d3 (+ d1 (/ (* d1 d2) d3))) (taylor inf d3) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor inf d3) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) #<representation binary64>) () ())) ())
#s(alt (* d3 (+ d1 (/ (* d1 d2) d3))) (taylor inf d3) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) #<representation binary64>) () ())) ())
#s(alt (* d3 (+ d1 (/ (* d1 d2) d3))) (taylor inf d3) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) #<representation binary64>) () ())) ())
#s(alt (* d3 (+ d1 (/ (* d1 d2) d3))) (taylor inf d3) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor inf d3) (#s(alt (*.f64 d3 d1) (patch (*.f64 d3 d1) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor inf d3) (#s(alt (*.f64 d3 d1) (patch (*.f64 d3 d1) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor inf d3) (#s(alt (*.f64 d3 d1) (patch (*.f64 d3 d1) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor inf d3) (#s(alt (*.f64 d3 d1) (patch (*.f64 d3 d1) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor inf d3) (#s(alt (*.f64 (+.f64 d3 d2) d1) (patch (*.f64 (+.f64 d3 d2) d1) #<representation binary64>) () ())) ())
#s(alt (* d3 (+ d1 (/ (* d1 d2) d3))) (taylor inf d3) (#s(alt (*.f64 (+.f64 d3 d2) d1) (patch (*.f64 (+.f64 d3 d2) d1) #<representation binary64>) () ())) ())
#s(alt (* d3 (+ d1 (/ (* d1 d2) d3))) (taylor inf d3) (#s(alt (*.f64 (+.f64 d3 d2) d1) (patch (*.f64 (+.f64 d3 d2) d1) #<representation binary64>) () ())) ())
#s(alt (* d3 (+ d1 (/ (* d1 d2) d3))) (taylor inf d3) (#s(alt (*.f64 (+.f64 d3 d2) d1) (patch (*.f64 (+.f64 d3 d2) d1) #<representation binary64>) () ())) ())
#s(alt d3 (taylor inf d3) (#s(alt (+.f64 d3 d2) (patch (+.f64 d3 d2) #<representation binary64>) () ())) ())
#s(alt (* d3 (+ 1 (/ d2 d3))) (taylor inf d3) (#s(alt (+.f64 d3 d2) (patch (+.f64 d3 d2) #<representation binary64>) () ())) ())
#s(alt (* d3 (+ 1 (/ d2 d3))) (taylor inf d3) (#s(alt (+.f64 d3 d2) (patch (+.f64 d3 d2) #<representation binary64>) () ())) ())
#s(alt (* d3 (+ 1 (/ d2 d3))) (taylor inf d3) (#s(alt (+.f64 d3 d2) (patch (+.f64 d3 d2) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor inf d3) (#s(alt (fma.f64 d3 d1 (*.f64 d2 d1)) (patch (fma.f64 d3 d1 (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* d3 (+ d1 (/ (* d1 d2) d3))) (taylor inf d3) (#s(alt (fma.f64 d3 d1 (*.f64 d2 d1)) (patch (fma.f64 d3 d1 (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* d3 (+ d1 (/ (* d1 d2) d3))) (taylor inf d3) (#s(alt (fma.f64 d3 d1 (*.f64 d2 d1)) (patch (fma.f64 d3 d1 (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* d3 (+ d1 (/ (* d1 d2) d3))) (taylor inf d3) (#s(alt (fma.f64 d3 d1 (*.f64 d2 d1)) (patch (fma.f64 d3 d1 (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor -inf d3) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* d3 (+ (* -1 d1) (* -1 (/ (* d1 d2) d3))))) (taylor -inf d3) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* d3 (+ (* -1 d1) (* -1 (/ (* d1 d2) d3))))) (taylor -inf d3) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* d3 (+ (* -1 d1) (* -1 (/ (* d1 d2) d3))))) (taylor -inf d3) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor -inf d3) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* d3 (+ (* -1 d1) (* -1 (/ (* d1 d2) d3))))) (taylor -inf d3) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* d3 (+ (* -1 d1) (* -1 (/ (* d1 d2) d3))))) (taylor -inf d3) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* d3 (+ (* -1 d1) (* -1 (/ (* d1 d2) d3))))) (taylor -inf d3) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor -inf d3) (#s(alt (*.f64 d3 d1) (patch (*.f64 d3 d1) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor -inf d3) (#s(alt (*.f64 d3 d1) (patch (*.f64 d3 d1) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor -inf d3) (#s(alt (*.f64 d3 d1) (patch (*.f64 d3 d1) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor -inf d3) (#s(alt (*.f64 d3 d1) (patch (*.f64 d3 d1) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor -inf d3) (#s(alt (*.f64 (+.f64 d3 d2) d1) (patch (*.f64 (+.f64 d3 d2) d1) #<representation binary64>) () ())) ())
#s(alt (* -1 (* d3 (+ (* -1 d1) (* -1 (/ (* d1 d2) d3))))) (taylor -inf d3) (#s(alt (*.f64 (+.f64 d3 d2) d1) (patch (*.f64 (+.f64 d3 d2) d1) #<representation binary64>) () ())) ())
#s(alt (* -1 (* d3 (+ (* -1 d1) (* -1 (/ (* d1 d2) d3))))) (taylor -inf d3) (#s(alt (*.f64 (+.f64 d3 d2) d1) (patch (*.f64 (+.f64 d3 d2) d1) #<representation binary64>) () ())) ())
#s(alt (* -1 (* d3 (+ (* -1 d1) (* -1 (/ (* d1 d2) d3))))) (taylor -inf d3) (#s(alt (*.f64 (+.f64 d3 d2) d1) (patch (*.f64 (+.f64 d3 d2) d1) #<representation binary64>) () ())) ())
#s(alt d3 (taylor -inf d3) (#s(alt (+.f64 d3 d2) (patch (+.f64 d3 d2) #<representation binary64>) () ())) ())
#s(alt (* -1 (* d3 (- (* -1 (/ d2 d3)) 1))) (taylor -inf d3) (#s(alt (+.f64 d3 d2) (patch (+.f64 d3 d2) #<representation binary64>) () ())) ())
#s(alt (* -1 (* d3 (- (* -1 (/ d2 d3)) 1))) (taylor -inf d3) (#s(alt (+.f64 d3 d2) (patch (+.f64 d3 d2) #<representation binary64>) () ())) ())
#s(alt (* -1 (* d3 (- (* -1 (/ d2 d3)) 1))) (taylor -inf d3) (#s(alt (+.f64 d3 d2) (patch (+.f64 d3 d2) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor -inf d3) (#s(alt (fma.f64 d3 d1 (*.f64 d2 d1)) (patch (fma.f64 d3 d1 (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* d3 (+ (* -1 d1) (* -1 (/ (* d1 d2) d3))))) (taylor -inf d3) (#s(alt (fma.f64 d3 d1 (*.f64 d2 d1)) (patch (fma.f64 d3 d1 (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* d3 (+ (* -1 d1) (* -1 (/ (* d1 d2) d3))))) (taylor -inf d3) (#s(alt (fma.f64 d3 d1 (*.f64 d2 d1)) (patch (fma.f64 d3 d1 (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* d3 (+ (* -1 d1) (* -1 (/ (* d1 d2) d3))))) (taylor -inf d3) (#s(alt (fma.f64 d3 d1 (*.f64 d2 d1)) (patch (fma.f64 d3 d1 (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* d1 (+ d2 d3)) (taylor 0 d1) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* d1 (+ d2 d3)) (taylor 0 d1) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* d1 (+ d2 d3)) (taylor 0 d1) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* d1 (+ d2 d3)) (taylor 0 d1) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor 0 d1) (#s(alt (*.f64 d2 d1) (patch (*.f64 d2 d1) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor 0 d1) (#s(alt (*.f64 d2 d1) (patch (*.f64 d2 d1) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor 0 d1) (#s(alt (*.f64 d2 d1) (patch (*.f64 d2 d1) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor 0 d1) (#s(alt (*.f64 d2 d1) (patch (*.f64 d2 d1) #<representation binary64>) () ())) ())
#s(alt (* d1 (+ d2 d3)) (taylor 0 d1) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) #<representation binary64>) () ())) ())
#s(alt (* d1 (+ d2 d3)) (taylor 0 d1) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) #<representation binary64>) () ())) ())
#s(alt (* d1 (+ d2 d3)) (taylor 0 d1) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) #<representation binary64>) () ())) ())
#s(alt (* d1 (+ d2 d3)) (taylor 0 d1) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor 0 d1) (#s(alt (*.f64 d3 d1) (patch (*.f64 d3 d1) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor 0 d1) (#s(alt (*.f64 d3 d1) (patch (*.f64 d3 d1) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor 0 d1) (#s(alt (*.f64 d3 d1) (patch (*.f64 d3 d1) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor 0 d1) (#s(alt (*.f64 d3 d1) (patch (*.f64 d3 d1) #<representation binary64>) () ())) ())
#s(alt (* d1 (+ d2 d3)) (taylor 0 d1) (#s(alt (*.f64 (+.f64 d3 d2) d1) (patch (*.f64 (+.f64 d3 d2) d1) #<representation binary64>) () ())) ())
#s(alt (* d1 (+ d2 d3)) (taylor 0 d1) (#s(alt (*.f64 (+.f64 d3 d2) d1) (patch (*.f64 (+.f64 d3 d2) d1) #<representation binary64>) () ())) ())
#s(alt (* d1 (+ d2 d3)) (taylor 0 d1) (#s(alt (*.f64 (+.f64 d3 d2) d1) (patch (*.f64 (+.f64 d3 d2) d1) #<representation binary64>) () ())) ())
#s(alt (* d1 (+ d2 d3)) (taylor 0 d1) (#s(alt (*.f64 (+.f64 d3 d2) d1) (patch (*.f64 (+.f64 d3 d2) d1) #<representation binary64>) () ())) ())
#s(alt (* d1 (+ d2 d3)) (taylor 0 d1) (#s(alt (fma.f64 d3 d1 (*.f64 d2 d1)) (patch (fma.f64 d3 d1 (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* d1 (+ d2 d3)) (taylor 0 d1) (#s(alt (fma.f64 d3 d1 (*.f64 d2 d1)) (patch (fma.f64 d3 d1 (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* d1 (+ d2 d3)) (taylor 0 d1) (#s(alt (fma.f64 d3 d1 (*.f64 d2 d1)) (patch (fma.f64 d3 d1 (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* d1 (+ d2 d3)) (taylor 0 d1) (#s(alt (fma.f64 d3 d1 (*.f64 d2 d1)) (patch (fma.f64 d3 d1 (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* d1 (+ d2 d3)) (taylor inf d1) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* d1 (+ d2 d3)) (taylor inf d1) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* d1 (+ d2 d3)) (taylor inf d1) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* d1 (+ d2 d3)) (taylor inf d1) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor inf d1) (#s(alt (*.f64 d2 d1) (patch (*.f64 d2 d1) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor inf d1) (#s(alt (*.f64 d2 d1) (patch (*.f64 d2 d1) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor inf d1) (#s(alt (*.f64 d2 d1) (patch (*.f64 d2 d1) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor inf d1) (#s(alt (*.f64 d2 d1) (patch (*.f64 d2 d1) #<representation binary64>) () ())) ())
#s(alt (* d1 (+ d2 d3)) (taylor inf d1) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) #<representation binary64>) () ())) ())
#s(alt (* d1 (+ d2 d3)) (taylor inf d1) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) #<representation binary64>) () ())) ())
#s(alt (* d1 (+ d2 d3)) (taylor inf d1) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) #<representation binary64>) () ())) ())
#s(alt (* d1 (+ d2 d3)) (taylor inf d1) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor inf d1) (#s(alt (*.f64 d3 d1) (patch (*.f64 d3 d1) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor inf d1) (#s(alt (*.f64 d3 d1) (patch (*.f64 d3 d1) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor inf d1) (#s(alt (*.f64 d3 d1) (patch (*.f64 d3 d1) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor inf d1) (#s(alt (*.f64 d3 d1) (patch (*.f64 d3 d1) #<representation binary64>) () ())) ())
#s(alt (* d1 (+ d2 d3)) (taylor inf d1) (#s(alt (*.f64 (+.f64 d3 d2) d1) (patch (*.f64 (+.f64 d3 d2) d1) #<representation binary64>) () ())) ())
#s(alt (* d1 (+ d2 d3)) (taylor inf d1) (#s(alt (*.f64 (+.f64 d3 d2) d1) (patch (*.f64 (+.f64 d3 d2) d1) #<representation binary64>) () ())) ())
#s(alt (* d1 (+ d2 d3)) (taylor inf d1) (#s(alt (*.f64 (+.f64 d3 d2) d1) (patch (*.f64 (+.f64 d3 d2) d1) #<representation binary64>) () ())) ())
#s(alt (* d1 (+ d2 d3)) (taylor inf d1) (#s(alt (*.f64 (+.f64 d3 d2) d1) (patch (*.f64 (+.f64 d3 d2) d1) #<representation binary64>) () ())) ())
#s(alt (* d1 (+ d2 d3)) (taylor inf d1) (#s(alt (fma.f64 d3 d1 (*.f64 d2 d1)) (patch (fma.f64 d3 d1 (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* d1 (+ d2 d3)) (taylor inf d1) (#s(alt (fma.f64 d3 d1 (*.f64 d2 d1)) (patch (fma.f64 d3 d1 (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* d1 (+ d2 d3)) (taylor inf d1) (#s(alt (fma.f64 d3 d1 (*.f64 d2 d1)) (patch (fma.f64 d3 d1 (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* d1 (+ d2 d3)) (taylor inf d1) (#s(alt (fma.f64 d3 d1 (*.f64 d2 d1)) (patch (fma.f64 d3 d1 (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* d1 (+ (* -1 d2) (* -1 d3)))) (taylor -inf d1) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* d1 (+ (* -1 d2) (* -1 d3)))) (taylor -inf d1) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* d1 (+ (* -1 d2) (* -1 d3)))) (taylor -inf d1) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* d1 (+ (* -1 d2) (* -1 d3)))) (taylor -inf d1) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor -inf d1) (#s(alt (*.f64 d2 d1) (patch (*.f64 d2 d1) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor -inf d1) (#s(alt (*.f64 d2 d1) (patch (*.f64 d2 d1) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor -inf d1) (#s(alt (*.f64 d2 d1) (patch (*.f64 d2 d1) #<representation binary64>) () ())) ())
#s(alt (* d1 d2) (taylor -inf d1) (#s(alt (*.f64 d2 d1) (patch (*.f64 d2 d1) #<representation binary64>) () ())) ())
#s(alt (* -1 (* d1 (+ (* -1 d2) (* -1 d3)))) (taylor -inf d1) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* d1 (+ (* -1 d2) (* -1 d3)))) (taylor -inf d1) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* d1 (+ (* -1 d2) (* -1 d3)))) (taylor -inf d1) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* d1 (+ (* -1 d2) (* -1 d3)))) (taylor -inf d1) (#s(alt #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) (patch #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor -inf d1) (#s(alt (*.f64 d3 d1) (patch (*.f64 d3 d1) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor -inf d1) (#s(alt (*.f64 d3 d1) (patch (*.f64 d3 d1) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor -inf d1) (#s(alt (*.f64 d3 d1) (patch (*.f64 d3 d1) #<representation binary64>) () ())) ())
#s(alt (* d1 d3) (taylor -inf d1) (#s(alt (*.f64 d3 d1) (patch (*.f64 d3 d1) #<representation binary64>) () ())) ())
#s(alt (* d1 (+ d2 d3)) (taylor -inf d1) (#s(alt (*.f64 (+.f64 d3 d2) d1) (patch (*.f64 (+.f64 d3 d2) d1) #<representation binary64>) () ())) ())
#s(alt (* d1 (+ d2 d3)) (taylor -inf d1) (#s(alt (*.f64 (+.f64 d3 d2) d1) (patch (*.f64 (+.f64 d3 d2) d1) #<representation binary64>) () ())) ())
#s(alt (* d1 (+ d2 d3)) (taylor -inf d1) (#s(alt (*.f64 (+.f64 d3 d2) d1) (patch (*.f64 (+.f64 d3 d2) d1) #<representation binary64>) () ())) ())
#s(alt (* d1 (+ d2 d3)) (taylor -inf d1) (#s(alt (*.f64 (+.f64 d3 d2) d1) (patch (*.f64 (+.f64 d3 d2) d1) #<representation binary64>) () ())) ())
#s(alt (* -1 (* d1 (+ (* -1 d2) (* -1 d3)))) (taylor -inf d1) (#s(alt (fma.f64 d3 d1 (*.f64 d2 d1)) (patch (fma.f64 d3 d1 (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* d1 (+ (* -1 d2) (* -1 d3)))) (taylor -inf d1) (#s(alt (fma.f64 d3 d1 (*.f64 d2 d1)) (patch (fma.f64 d3 d1 (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* d1 (+ (* -1 d2) (* -1 d3)))) (taylor -inf d1) (#s(alt (fma.f64 d3 d1 (*.f64 d2 d1)) (patch (fma.f64 d3 d1 (*.f64 d2 d1)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* d1 (+ (* -1 d2) (* -1 d3)))) (taylor -inf d1) (#s(alt (fma.f64 d3 d1 (*.f64 d2 d1)) (patch (fma.f64 d3 d1 (*.f64 d2 d1)) #<representation binary64>) () ())) ())
Calls

9 calls:

TimeVariablePointExpression
1.0ms
d2
@inf
((+ (* d1 d2) (* d1 d3)) (* d2 d1) (+ (* d1 d2) (* d1 d3)) (* d3 d1) (* (+ d3 d2) d1) (+ d3 d2) (+ (* d3 d1) (* d2 d1)))
1.0ms
d1
@-inf
((+ (* d1 d2) (* d1 d3)) (* d2 d1) (+ (* d1 d2) (* d1 d3)) (* d3 d1) (* (+ d3 d2) d1) (+ d3 d2) (+ (* d3 d1) (* d2 d1)))
1.0ms
d1
@inf
((+ (* d1 d2) (* d1 d3)) (* d2 d1) (+ (* d1 d2) (* d1 d3)) (* d3 d1) (* (+ d3 d2) d1) (+ d3 d2) (+ (* d3 d1) (* d2 d1)))
1.0ms
d2
@-inf
((+ (* d1 d2) (* d1 d3)) (* d2 d1) (+ (* d1 d2) (* d1 d3)) (* d3 d1) (* (+ d3 d2) d1) (+ d3 d2) (+ (* d3 d1) (* d2 d1)))
1.0ms
d3
@-inf
((+ (* d1 d2) (* d1 d3)) (* d2 d1) (+ (* d1 d2) (* d1 d3)) (* d3 d1) (* (+ d3 d2) d1) (+ d3 d2) (+ (* d3 d1) (* d2 d1)))

simplify159.0ms (4.7%)

Memory
8.3MiB live, 119.8MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
044876
1151876
2400876
31152876
43166876
53807876
64170876
74490876
84588876
94613876
107237876
08001876
Stop Event
iter limit
node limit
Counts
216 → 210
Calls
Call 1
Inputs
(* d1 d3)
(+ (* d1 d2) (* d1 d3))
(+ (* d1 d2) (* d1 d3))
(+ (* d1 d2) (* d1 d3))
(* d1 d2)
(* d1 d2)
(* d1 d2)
(* d1 d2)
(* d1 d3)
(+ (* d1 d2) (* d1 d3))
(+ (* d1 d2) (* d1 d3))
(+ (* d1 d2) (* d1 d3))
(* d1 d3)
(+ (* d1 d2) (* d1 d3))
(+ (* d1 d2) (* d1 d3))
(+ (* d1 d2) (* d1 d3))
d3
(+ d2 d3)
(+ d2 d3)
(+ d2 d3)
(* d1 d3)
(+ (* d1 d2) (* d1 d3))
(+ (* d1 d2) (* d1 d3))
(+ (* d1 d2) (* d1 d3))
(* d1 d2)
(* d2 (+ d1 (/ (* d1 d3) d2)))
(* d2 (+ d1 (/ (* d1 d3) d2)))
(* d2 (+ d1 (/ (* d1 d3) d2)))
(* d1 d2)
(* d1 d2)
(* d1 d2)
(* d1 d2)
(* d1 d2)
(* d2 (+ d1 (/ (* d1 d3) d2)))
(* d2 (+ d1 (/ (* d1 d3) d2)))
(* d2 (+ d1 (/ (* d1 d3) d2)))
(* d1 d2)
(* d2 (+ d1 (/ (* d1 d3) d2)))
(* d2 (+ d1 (/ (* d1 d3) d2)))
(* d2 (+ d1 (/ (* d1 d3) d2)))
d2
(* d2 (+ 1 (/ d3 d2)))
(* d2 (+ 1 (/ d3 d2)))
(* d2 (+ 1 (/ d3 d2)))
(* d1 d2)
(* d2 (+ d1 (/ (* d1 d3) d2)))
(* d2 (+ d1 (/ (* d1 d3) d2)))
(* d2 (+ d1 (/ (* d1 d3) d2)))
(* d1 d2)
(* -1 (* d2 (+ (* -1 d1) (* -1 (/ (* d1 d3) d2)))))
(* -1 (* d2 (+ (* -1 d1) (* -1 (/ (* d1 d3) d2)))))
(* -1 (* d2 (+ (* -1 d1) (* -1 (/ (* d1 d3) d2)))))
(* d1 d2)
(* d1 d2)
(* d1 d2)
(* d1 d2)
(* d1 d2)
(* -1 (* d2 (+ (* -1 d1) (* -1 (/ (* d1 d3) d2)))))
(* -1 (* d2 (+ (* -1 d1) (* -1 (/ (* d1 d3) d2)))))
(* -1 (* d2 (+ (* -1 d1) (* -1 (/ (* d1 d3) d2)))))
(* d1 d2)
(* -1 (* d2 (+ (* -1 d1) (* -1 (/ (* d1 d3) d2)))))
(* -1 (* d2 (+ (* -1 d1) (* -1 (/ (* d1 d3) d2)))))
(* -1 (* d2 (+ (* -1 d1) (* -1 (/ (* d1 d3) d2)))))
d2
(* -1 (* d2 (- (* -1 (/ d3 d2)) 1)))
(* -1 (* d2 (- (* -1 (/ d3 d2)) 1)))
(* -1 (* d2 (- (* -1 (/ d3 d2)) 1)))
(* d1 d2)
(* -1 (* d2 (+ (* -1 d1) (* -1 (/ (* d1 d3) d2)))))
(* -1 (* d2 (+ (* -1 d1) (* -1 (/ (* d1 d3) d2)))))
(* -1 (* d2 (+ (* -1 d1) (* -1 (/ (* d1 d3) d2)))))
(* d1 d2)
(+ (* d1 d2) (* d1 d3))
(+ (* d1 d2) (* d1 d3))
(+ (* d1 d2) (* d1 d3))
(* d1 d2)
(+ (* d1 d2) (* d1 d3))
(+ (* d1 d2) (* d1 d3))
(+ (* d1 d2) (* d1 d3))
(* d1 d3)
(* d1 d3)
(* d1 d3)
(* d1 d3)
(* d1 d2)
(+ (* d1 d2) (* d1 d3))
(+ (* d1 d2) (* d1 d3))
(+ (* d1 d2) (* d1 d3))
d2
(+ d2 d3)
(+ d2 d3)
(+ d2 d3)
(* d1 d2)
(+ (* d1 d2) (* d1 d3))
(+ (* d1 d2) (* d1 d3))
(+ (* d1 d2) (* d1 d3))
(* d1 d3)
(* d3 (+ d1 (/ (* d1 d2) d3)))
(* d3 (+ d1 (/ (* d1 d2) d3)))
(* d3 (+ d1 (/ (* d1 d2) d3)))
(* d1 d3)
(* d3 (+ d1 (/ (* d1 d2) d3)))
(* d3 (+ d1 (/ (* d1 d2) d3)))
(* d3 (+ d1 (/ (* d1 d2) d3)))
(* d1 d3)
(* d1 d3)
(* d1 d3)
(* d1 d3)
(* d1 d3)
(* d3 (+ d1 (/ (* d1 d2) d3)))
(* d3 (+ d1 (/ (* d1 d2) d3)))
(* d3 (+ d1 (/ (* d1 d2) d3)))
d3
(* d3 (+ 1 (/ d2 d3)))
(* d3 (+ 1 (/ d2 d3)))
(* d3 (+ 1 (/ d2 d3)))
(* d1 d3)
(* d3 (+ d1 (/ (* d1 d2) d3)))
(* d3 (+ d1 (/ (* d1 d2) d3)))
(* d3 (+ d1 (/ (* d1 d2) d3)))
(* d1 d3)
(* -1 (* d3 (+ (* -1 d1) (* -1 (/ (* d1 d2) d3)))))
(* -1 (* d3 (+ (* -1 d1) (* -1 (/ (* d1 d2) d3)))))
(* -1 (* d3 (+ (* -1 d1) (* -1 (/ (* d1 d2) d3)))))
(* d1 d3)
(* -1 (* d3 (+ (* -1 d1) (* -1 (/ (* d1 d2) d3)))))
(* -1 (* d3 (+ (* -1 d1) (* -1 (/ (* d1 d2) d3)))))
(* -1 (* d3 (+ (* -1 d1) (* -1 (/ (* d1 d2) d3)))))
(* d1 d3)
(* d1 d3)
(* d1 d3)
(* d1 d3)
(* d1 d3)
(* -1 (* d3 (+ (* -1 d1) (* -1 (/ (* d1 d2) d3)))))
(* -1 (* d3 (+ (* -1 d1) (* -1 (/ (* d1 d2) d3)))))
(* -1 (* d3 (+ (* -1 d1) (* -1 (/ (* d1 d2) d3)))))
d3
(* -1 (* d3 (- (* -1 (/ d2 d3)) 1)))
(* -1 (* d3 (- (* -1 (/ d2 d3)) 1)))
(* -1 (* d3 (- (* -1 (/ d2 d3)) 1)))
(* d1 d3)
(* -1 (* d3 (+ (* -1 d1) (* -1 (/ (* d1 d2) d3)))))
(* -1 (* d3 (+ (* -1 d1) (* -1 (/ (* d1 d2) d3)))))
(* -1 (* d3 (+ (* -1 d1) (* -1 (/ (* d1 d2) d3)))))
(* d1 (+ d2 d3))
(* d1 (+ d2 d3))
(* d1 (+ d2 d3))
(* d1 (+ d2 d3))
(* d1 d2)
(* d1 d2)
(* d1 d2)
(* d1 d2)
(* d1 (+ d2 d3))
(* d1 (+ d2 d3))
(* d1 (+ d2 d3))
(* d1 (+ d2 d3))
(* d1 d3)
(* d1 d3)
(* d1 d3)
(* d1 d3)
(* d1 (+ d2 d3))
(* d1 (+ d2 d3))
(* d1 (+ d2 d3))
(* d1 (+ d2 d3))
(* d1 (+ d2 d3))
(* d1 (+ d2 d3))
(* d1 (+ d2 d3))
(* d1 (+ d2 d3))
(* d1 (+ d2 d3))
(* d1 (+ d2 d3))
(* d1 (+ d2 d3))
(* d1 (+ d2 d3))
(* d1 d2)
(* d1 d2)
(* d1 d2)
(* d1 d2)
(* d1 (+ d2 d3))
(* d1 (+ d2 d3))
(* d1 (+ d2 d3))
(* d1 (+ d2 d3))
(* d1 d3)
(* d1 d3)
(* d1 d3)
(* d1 d3)
(* d1 (+ d2 d3))
(* d1 (+ d2 d3))
(* d1 (+ d2 d3))
(* d1 (+ d2 d3))
(* d1 (+ d2 d3))
(* d1 (+ d2 d3))
(* d1 (+ d2 d3))
(* d1 (+ d2 d3))
(* -1 (* d1 (+ (* -1 d2) (* -1 d3))))
(* -1 (* d1 (+ (* -1 d2) (* -1 d3))))
(* -1 (* d1 (+ (* -1 d2) (* -1 d3))))
(* -1 (* d1 (+ (* -1 d2) (* -1 d3))))
(* d1 d2)
(* d1 d2)
(* d1 d2)
(* d1 d2)
(* -1 (* d1 (+ (* -1 d2) (* -1 d3))))
(* -1 (* d1 (+ (* -1 d2) (* -1 d3))))
(* -1 (* d1 (+ (* -1 d2) (* -1 d3))))
(* -1 (* d1 (+ (* -1 d2) (* -1 d3))))
(* d1 d3)
(* d1 d3)
(* d1 d3)
(* d1 d3)
(* d1 (+ d2 d3))
(* d1 (+ d2 d3))
(* d1 (+ d2 d3))
(* d1 (+ d2 d3))
(* -1 (* d1 (+ (* -1 d2) (* -1 d3))))
(* -1 (* d1 (+ (* -1 d2) (* -1 d3))))
(* -1 (* d1 (+ (* -1 d2) (* -1 d3))))
(* -1 (* d1 (+ (* -1 d2) (* -1 d3))))
Outputs
(* d1 d3)
(*.f64 d3 d1)
(+ (* d1 d2) (* d1 d3))
(*.f64 (+.f64 d2 d3) d1)
(+ (* d1 d2) (* d1 d3))
(*.f64 (+.f64 d2 d3) d1)
(+ (* d1 d2) (* d1 d3))
(*.f64 (+.f64 d2 d3) d1)
(* d1 d2)
(*.f64 d2 d1)
(* d1 d2)
(*.f64 d2 d1)
(* d1 d2)
(*.f64 d2 d1)
(* d1 d2)
(*.f64 d2 d1)
(* d1 d3)
(*.f64 d3 d1)
(+ (* d1 d2) (* d1 d3))
(*.f64 (+.f64 d2 d3) d1)
(+ (* d1 d2) (* d1 d3))
(*.f64 (+.f64 d2 d3) d1)
(+ (* d1 d2) (* d1 d3))
(*.f64 (+.f64 d2 d3) d1)
(* d1 d3)
(*.f64 d3 d1)
(+ (* d1 d2) (* d1 d3))
(*.f64 (+.f64 d2 d3) d1)
(+ (* d1 d2) (* d1 d3))
(*.f64 (+.f64 d2 d3) d1)
(+ (* d1 d2) (* d1 d3))
(*.f64 (+.f64 d2 d3) d1)
d3
(+ d2 d3)
(+.f64 d2 d3)
(+ d2 d3)
(+.f64 d2 d3)
(+ d2 d3)
(+.f64 d2 d3)
(* d1 d3)
(*.f64 d3 d1)
(+ (* d1 d2) (* d1 d3))
(*.f64 (+.f64 d2 d3) d1)
(+ (* d1 d2) (* d1 d3))
(*.f64 (+.f64 d2 d3) d1)
(+ (* d1 d2) (* d1 d3))
(*.f64 (+.f64 d2 d3) d1)
(* d1 d2)
(*.f64 d2 d1)
(* d2 (+ d1 (/ (* d1 d3) d2)))
(*.f64 (+.f64 d2 d3) d1)
(* d2 (+ d1 (/ (* d1 d3) d2)))
(*.f64 (+.f64 d2 d3) d1)
(* d2 (+ d1 (/ (* d1 d3) d2)))
(*.f64 (+.f64 d2 d3) d1)
(* d1 d2)
(*.f64 d2 d1)
(* d1 d2)
(*.f64 d2 d1)
(* d1 d2)
(*.f64 d2 d1)
(* d1 d2)
(*.f64 d2 d1)
(* d1 d2)
(*.f64 d2 d1)
(* d2 (+ d1 (/ (* d1 d3) d2)))
(*.f64 (+.f64 d2 d3) d1)
(* d2 (+ d1 (/ (* d1 d3) d2)))
(*.f64 (+.f64 d2 d3) d1)
(* d2 (+ d1 (/ (* d1 d3) d2)))
(*.f64 (+.f64 d2 d3) d1)
(* d1 d2)
(*.f64 d2 d1)
(* d2 (+ d1 (/ (* d1 d3) d2)))
(*.f64 (+.f64 d2 d3) d1)
(* d2 (+ d1 (/ (* d1 d3) d2)))
(*.f64 (+.f64 d2 d3) d1)
(* d2 (+ d1 (/ (* d1 d3) d2)))
(*.f64 (+.f64 d2 d3) d1)
d2
(* d2 (+ 1 (/ d3 d2)))
(+.f64 d2 d3)
(* d2 (+ 1 (/ d3 d2)))
(+.f64 d2 d3)
(* d2 (+ 1 (/ d3 d2)))
(+.f64 d2 d3)
(* d1 d2)
(*.f64 d2 d1)
(* d2 (+ d1 (/ (* d1 d3) d2)))
(*.f64 (+.f64 d2 d3) d1)
(* d2 (+ d1 (/ (* d1 d3) d2)))
(*.f64 (+.f64 d2 d3) d1)
(* d2 (+ d1 (/ (* d1 d3) d2)))
(*.f64 (+.f64 d2 d3) d1)
(* d1 d2)
(*.f64 d2 d1)
(* -1 (* d2 (+ (* -1 d1) (* -1 (/ (* d1 d3) d2)))))
(*.f64 (+.f64 d2 d3) d1)
(* -1 (* d2 (+ (* -1 d1) (* -1 (/ (* d1 d3) d2)))))
(*.f64 (+.f64 d2 d3) d1)
(* -1 (* d2 (+ (* -1 d1) (* -1 (/ (* d1 d3) d2)))))
(*.f64 (+.f64 d2 d3) d1)
(* d1 d2)
(*.f64 d2 d1)
(* d1 d2)
(*.f64 d2 d1)
(* d1 d2)
(*.f64 d2 d1)
(* d1 d2)
(*.f64 d2 d1)
(* d1 d2)
(*.f64 d2 d1)
(* -1 (* d2 (+ (* -1 d1) (* -1 (/ (* d1 d3) d2)))))
(*.f64 (+.f64 d2 d3) d1)
(* -1 (* d2 (+ (* -1 d1) (* -1 (/ (* d1 d3) d2)))))
(*.f64 (+.f64 d2 d3) d1)
(* -1 (* d2 (+ (* -1 d1) (* -1 (/ (* d1 d3) d2)))))
(*.f64 (+.f64 d2 d3) d1)
(* d1 d2)
(*.f64 d2 d1)
(* -1 (* d2 (+ (* -1 d1) (* -1 (/ (* d1 d3) d2)))))
(*.f64 (+.f64 d2 d3) d1)
(* -1 (* d2 (+ (* -1 d1) (* -1 (/ (* d1 d3) d2)))))
(*.f64 (+.f64 d2 d3) d1)
(* -1 (* d2 (+ (* -1 d1) (* -1 (/ (* d1 d3) d2)))))
(*.f64 (+.f64 d2 d3) d1)
d2
(* -1 (* d2 (- (* -1 (/ d3 d2)) 1)))
(+.f64 d2 d3)
(* -1 (* d2 (- (* -1 (/ d3 d2)) 1)))
(+.f64 d2 d3)
(* -1 (* d2 (- (* -1 (/ d3 d2)) 1)))
(+.f64 d2 d3)
(* d1 d2)
(*.f64 d2 d1)
(* -1 (* d2 (+ (* -1 d1) (* -1 (/ (* d1 d3) d2)))))
(*.f64 (+.f64 d2 d3) d1)
(* -1 (* d2 (+ (* -1 d1) (* -1 (/ (* d1 d3) d2)))))
(*.f64 (+.f64 d2 d3) d1)
(* -1 (* d2 (+ (* -1 d1) (* -1 (/ (* d1 d3) d2)))))
(*.f64 (+.f64 d2 d3) d1)
(* d1 d2)
(*.f64 d2 d1)
(+ (* d1 d2) (* d1 d3))
(*.f64 (+.f64 d2 d3) d1)
(+ (* d1 d2) (* d1 d3))
(*.f64 (+.f64 d2 d3) d1)
(+ (* d1 d2) (* d1 d3))
(*.f64 (+.f64 d2 d3) d1)
(* d1 d2)
(*.f64 d2 d1)
(+ (* d1 d2) (* d1 d3))
(*.f64 (+.f64 d2 d3) d1)
(+ (* d1 d2) (* d1 d3))
(*.f64 (+.f64 d2 d3) d1)
(+ (* d1 d2) (* d1 d3))
(*.f64 (+.f64 d2 d3) d1)
(* d1 d3)
(*.f64 d3 d1)
(* d1 d3)
(*.f64 d3 d1)
(* d1 d3)
(*.f64 d3 d1)
(* d1 d3)
(*.f64 d3 d1)
(* d1 d2)
(*.f64 d2 d1)
(+ (* d1 d2) (* d1 d3))
(*.f64 (+.f64 d2 d3) d1)
(+ (* d1 d2) (* d1 d3))
(*.f64 (+.f64 d2 d3) d1)
(+ (* d1 d2) (* d1 d3))
(*.f64 (+.f64 d2 d3) d1)
d2
(+ d2 d3)
(+.f64 d2 d3)
(+ d2 d3)
(+.f64 d2 d3)
(+ d2 d3)
(+.f64 d2 d3)
(* d1 d2)
(*.f64 d2 d1)
(+ (* d1 d2) (* d1 d3))
(*.f64 (+.f64 d2 d3) d1)
(+ (* d1 d2) (* d1 d3))
(*.f64 (+.f64 d2 d3) d1)
(+ (* d1 d2) (* d1 d3))
(*.f64 (+.f64 d2 d3) d1)
(* d1 d3)
(*.f64 d3 d1)
(* d3 (+ d1 (/ (* d1 d2) d3)))
(*.f64 (+.f64 d2 d3) d1)
(* d3 (+ d1 (/ (* d1 d2) d3)))
(*.f64 (+.f64 d2 d3) d1)
(* d3 (+ d1 (/ (* d1 d2) d3)))
(*.f64 (+.f64 d2 d3) d1)
(* d1 d3)
(*.f64 d3 d1)
(* d3 (+ d1 (/ (* d1 d2) d3)))
(*.f64 (+.f64 d2 d3) d1)
(* d3 (+ d1 (/ (* d1 d2) d3)))
(*.f64 (+.f64 d2 d3) d1)
(* d3 (+ d1 (/ (* d1 d2) d3)))
(*.f64 (+.f64 d2 d3) d1)
(* d1 d3)
(*.f64 d3 d1)
(* d1 d3)
(*.f64 d3 d1)
(* d1 d3)
(*.f64 d3 d1)
(* d1 d3)
(*.f64 d3 d1)
(* d1 d3)
(*.f64 d3 d1)
(* d3 (+ d1 (/ (* d1 d2) d3)))
(*.f64 (+.f64 d2 d3) d1)
(* d3 (+ d1 (/ (* d1 d2) d3)))
(*.f64 (+.f64 d2 d3) d1)
(* d3 (+ d1 (/ (* d1 d2) d3)))
(*.f64 (+.f64 d2 d3) d1)
d3
(* d3 (+ 1 (/ d2 d3)))
(+.f64 d2 d3)
(* d3 (+ 1 (/ d2 d3)))
(+.f64 d2 d3)
(* d3 (+ 1 (/ d2 d3)))
(+.f64 d2 d3)
(* d1 d3)
(*.f64 d3 d1)
(* d3 (+ d1 (/ (* d1 d2) d3)))
(*.f64 (+.f64 d2 d3) d1)
(* d3 (+ d1 (/ (* d1 d2) d3)))
(*.f64 (+.f64 d2 d3) d1)
(* d3 (+ d1 (/ (* d1 d2) d3)))
(*.f64 (+.f64 d2 d3) d1)
(* d1 d3)
(*.f64 d3 d1)
(* -1 (* d3 (+ (* -1 d1) (* -1 (/ (* d1 d2) d3)))))
(*.f64 (+.f64 d2 d3) d1)
(* -1 (* d3 (+ (* -1 d1) (* -1 (/ (* d1 d2) d3)))))
(*.f64 (+.f64 d2 d3) d1)
(* -1 (* d3 (+ (* -1 d1) (* -1 (/ (* d1 d2) d3)))))
(*.f64 (+.f64 d2 d3) d1)
(* d1 d3)
(*.f64 d3 d1)
(* -1 (* d3 (+ (* -1 d1) (* -1 (/ (* d1 d2) d3)))))
(*.f64 (+.f64 d2 d3) d1)
(* -1 (* d3 (+ (* -1 d1) (* -1 (/ (* d1 d2) d3)))))
(*.f64 (+.f64 d2 d3) d1)
(* -1 (* d3 (+ (* -1 d1) (* -1 (/ (* d1 d2) d3)))))
(*.f64 (+.f64 d2 d3) d1)
(* d1 d3)
(*.f64 d3 d1)
(* d1 d3)
(*.f64 d3 d1)
(* d1 d3)
(*.f64 d3 d1)
(* d1 d3)
(*.f64 d3 d1)
(* d1 d3)
(*.f64 d3 d1)
(* -1 (* d3 (+ (* -1 d1) (* -1 (/ (* d1 d2) d3)))))
(*.f64 (+.f64 d2 d3) d1)
(* -1 (* d3 (+ (* -1 d1) (* -1 (/ (* d1 d2) d3)))))
(*.f64 (+.f64 d2 d3) d1)
(* -1 (* d3 (+ (* -1 d1) (* -1 (/ (* d1 d2) d3)))))
(*.f64 (+.f64 d2 d3) d1)
d3
(* -1 (* d3 (- (* -1 (/ d2 d3)) 1)))
(+.f64 d2 d3)
(* -1 (* d3 (- (* -1 (/ d2 d3)) 1)))
(+.f64 d2 d3)
(* -1 (* d3 (- (* -1 (/ d2 d3)) 1)))
(+.f64 d2 d3)
(* d1 d3)
(*.f64 d3 d1)
(* -1 (* d3 (+ (* -1 d1) (* -1 (/ (* d1 d2) d3)))))
(*.f64 (+.f64 d2 d3) d1)
(* -1 (* d3 (+ (* -1 d1) (* -1 (/ (* d1 d2) d3)))))
(*.f64 (+.f64 d2 d3) d1)
(* -1 (* d3 (+ (* -1 d1) (* -1 (/ (* d1 d2) d3)))))
(*.f64 (+.f64 d2 d3) d1)
(* d1 (+ d2 d3))
(*.f64 (+.f64 d2 d3) d1)
(* d1 (+ d2 d3))
(*.f64 (+.f64 d2 d3) d1)
(* d1 (+ d2 d3))
(*.f64 (+.f64 d2 d3) d1)
(* d1 (+ d2 d3))
(*.f64 (+.f64 d2 d3) d1)
(* d1 d2)
(*.f64 d2 d1)
(* d1 d2)
(*.f64 d2 d1)
(* d1 d2)
(*.f64 d2 d1)
(* d1 d2)
(*.f64 d2 d1)
(* d1 (+ d2 d3))
(*.f64 (+.f64 d2 d3) d1)
(* d1 (+ d2 d3))
(*.f64 (+.f64 d2 d3) d1)
(* d1 (+ d2 d3))
(*.f64 (+.f64 d2 d3) d1)
(* d1 (+ d2 d3))
(*.f64 (+.f64 d2 d3) d1)
(* d1 d3)
(*.f64 d3 d1)
(* d1 d3)
(*.f64 d3 d1)
(* d1 d3)
(*.f64 d3 d1)
(* d1 d3)
(*.f64 d3 d1)
(* d1 (+ d2 d3))
(*.f64 (+.f64 d2 d3) d1)
(* d1 (+ d2 d3))
(*.f64 (+.f64 d2 d3) d1)
(* d1 (+ d2 d3))
(*.f64 (+.f64 d2 d3) d1)
(* d1 (+ d2 d3))
(*.f64 (+.f64 d2 d3) d1)
(* d1 (+ d2 d3))
(*.f64 (+.f64 d2 d3) d1)
(* d1 (+ d2 d3))
(*.f64 (+.f64 d2 d3) d1)
(* d1 (+ d2 d3))
(*.f64 (+.f64 d2 d3) d1)
(* d1 (+ d2 d3))
(*.f64 (+.f64 d2 d3) d1)
(* d1 (+ d2 d3))
(*.f64 (+.f64 d2 d3) d1)
(* d1 (+ d2 d3))
(*.f64 (+.f64 d2 d3) d1)
(* d1 (+ d2 d3))
(*.f64 (+.f64 d2 d3) d1)
(* d1 (+ d2 d3))
(*.f64 (+.f64 d2 d3) d1)
(* d1 d2)
(*.f64 d2 d1)
(* d1 d2)
(*.f64 d2 d1)
(* d1 d2)
(*.f64 d2 d1)
(* d1 d2)
(*.f64 d2 d1)
(* d1 (+ d2 d3))
(*.f64 (+.f64 d2 d3) d1)
(* d1 (+ d2 d3))
(*.f64 (+.f64 d2 d3) d1)
(* d1 (+ d2 d3))
(*.f64 (+.f64 d2 d3) d1)
(* d1 (+ d2 d3))
(*.f64 (+.f64 d2 d3) d1)
(* d1 d3)
(*.f64 d3 d1)
(* d1 d3)
(*.f64 d3 d1)
(* d1 d3)
(*.f64 d3 d1)
(* d1 d3)
(*.f64 d3 d1)
(* d1 (+ d2 d3))
(*.f64 (+.f64 d2 d3) d1)
(* d1 (+ d2 d3))
(*.f64 (+.f64 d2 d3) d1)
(* d1 (+ d2 d3))
(*.f64 (+.f64 d2 d3) d1)
(* d1 (+ d2 d3))
(*.f64 (+.f64 d2 d3) d1)
(* d1 (+ d2 d3))
(*.f64 (+.f64 d2 d3) d1)
(* d1 (+ d2 d3))
(*.f64 (+.f64 d2 d3) d1)
(* d1 (+ d2 d3))
(*.f64 (+.f64 d2 d3) d1)
(* d1 (+ d2 d3))
(*.f64 (+.f64 d2 d3) d1)
(* -1 (* d1 (+ (* -1 d2) (* -1 d3))))
(*.f64 (+.f64 d2 d3) d1)
(* -1 (* d1 (+ (* -1 d2) (* -1 d3))))
(*.f64 (+.f64 d2 d3) d1)
(* -1 (* d1 (+ (* -1 d2) (* -1 d3))))
(*.f64 (+.f64 d2 d3) d1)
(* -1 (* d1 (+ (* -1 d2) (* -1 d3))))
(*.f64 (+.f64 d2 d3) d1)
(* d1 d2)
(*.f64 d2 d1)
(* d1 d2)
(*.f64 d2 d1)
(* d1 d2)
(*.f64 d2 d1)
(* d1 d2)
(*.f64 d2 d1)
(* -1 (* d1 (+ (* -1 d2) (* -1 d3))))
(*.f64 (+.f64 d2 d3) d1)
(* -1 (* d1 (+ (* -1 d2) (* -1 d3))))
(*.f64 (+.f64 d2 d3) d1)
(* -1 (* d1 (+ (* -1 d2) (* -1 d3))))
(*.f64 (+.f64 d2 d3) d1)
(* -1 (* d1 (+ (* -1 d2) (* -1 d3))))
(*.f64 (+.f64 d2 d3) d1)
(* d1 d3)
(*.f64 d3 d1)
(* d1 d3)
(*.f64 d3 d1)
(* d1 d3)
(*.f64 d3 d1)
(* d1 d3)
(*.f64 d3 d1)
(* d1 (+ d2 d3))
(*.f64 (+.f64 d2 d3) d1)
(* d1 (+ d2 d3))
(*.f64 (+.f64 d2 d3) d1)
(* d1 (+ d2 d3))
(*.f64 (+.f64 d2 d3) d1)
(* d1 (+ d2 d3))
(*.f64 (+.f64 d2 d3) d1)
(* -1 (* d1 (+ (* -1 d2) (* -1 d3))))
(*.f64 (+.f64 d2 d3) d1)
(* -1 (* d1 (+ (* -1 d2) (* -1 d3))))
(*.f64 (+.f64 d2 d3) d1)
(* -1 (* d1 (+ (* -1 d2) (* -1 d3))))
(*.f64 (+.f64 d2 d3) d1)
(* -1 (* d1 (+ (* -1 d2) (* -1 d3))))
(*.f64 (+.f64 d2 d3) d1)

rewrite228.0ms (6.8%)

Memory
16.6MiB live, 173.9MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01342
01837
16837
241337
3468937
0835137
Stop Event
iter limit
node limit
iter limit
Counts
7 → 400
Calls
Call 1
Inputs
#s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1))
(*.f64 d2 d1)
#s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1))
(*.f64 d3 d1)
(*.f64 (+.f64 d3 d2) d1)
(+.f64 d3 d2)
(fma.f64 d3 d1 (*.f64 d2 d1))
Outputs
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval96.0ms (2.8%)

Memory
-11.4MiB live, 71.2MiB allocated
Compiler

Compiled 10 917 to 699 computations (93.6% saved)

prune18.0ms (0.5%)

Memory
9.0MiB live, 45.8MiB allocated
Pruning

4 alts after pruning (0 fresh and 4 done)

PrunedKeptTotal
New6410641
Fresh000
Picked044
Done000
Total6414645
Accuracy
100.0%
Counts
645 → 4
Alt Table
Click to see full alt table
StatusAccuracyProgram
97.3%
(fma.f64 d3 d1 (*.f64 d2 d1))
100.0%
(*.f64 (+.f64 d3 d2) d1)
54.4%
#s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1))
54.0%
#s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1))
Compiler

Compiled 45 to 33 computations (26.7% saved)

regimes10.0ms (0.3%)

Memory
18.7MiB live, 18.7MiB allocated
Counts
5 → 1
Calls
Call 1
Inputs
#s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1))
#s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1))
(*.f64 (+.f64 d3 d2) d1)
(fma.f64 d3 d1 (*.f64 d2 d1))
(+.f64 (*.f64 d1 d2) (*.f64 d1 d3))
Outputs
(*.f64 (+.f64 d3 d2) d1)
Calls

4 calls:

2.0ms
d2
2.0ms
(+.f64 (*.f64 d1 d2) (*.f64 d1 d3))
2.0ms
d3
2.0ms
d1
Results
AccuracySegmentsBranch
100.0%1d1
100.0%1d2
100.0%1d3
100.0%1(+.f64 (*.f64 d1 d2) (*.f64 d1 d3))
Compiler

Compiled 10 to 15 computations (-50% saved)

regimes9.0ms (0.3%)

Memory
-24.0MiB live, 12.8MiB allocated
Counts
2 → 2
Calls
Call 1
Inputs
#s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1))
#s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1))
Outputs
#s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1))
#s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1))
Calls

4 calls:

4.0ms
d1
1.0ms
d2
1.0ms
d3
1.0ms
(+.f64 (*.f64 d1 d2) (*.f64 d1 d3))
Results
AccuracySegmentsBranch
63.4%5d1
83.3%2d2
88.9%2d3
98.4%2(+.f64 (*.f64 d1 d2) (*.f64 d1 d3))
Compiler

Compiled 10 to 15 computations (-50% saved)

regimes5.0ms (0.2%)

Memory
11.0MiB live, 11.0MiB allocated
Accuracy

Total 0.0b remaining (0%)

Threshold costs 0b (0%)

Counts
1 → 1
Calls
Call 1
Inputs
#s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1))
Outputs
#s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1))
Calls

4 calls:

1.0ms
d3
1.0ms
d2
1.0ms
(+.f64 (*.f64 d1 d2) (*.f64 d1 d3))
1.0ms
d1
Results
AccuracySegmentsBranch
54.0%1d1
54.0%1d2
54.0%1d3
54.0%1(+.f64 (*.f64 d1 d2) (*.f64 d1 d3))
Compiler

Compiled 10 to 15 computations (-50% saved)

bsearch0.0ms (0%)

Memory
0.6MiB live, 0.6MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-5.32e-321
0.0
Compiler

Compiled 10 to 12 computations (-20% saved)

simplify25.0ms (0.7%)

Memory
-13.1MiB live, 34.4MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01848
12348
Stop Event
saturated
Calls
Call 1
Inputs
(*.f64 (+.f64 d3 d2) d1)
(if (<=.f64 (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) #s(literal -253/50600563326827654588123836679729326762389162441035529589225339506857584891998836722990095925359281123796769466079202977847452184346448369216753349985184627480379356069141590341116726935523304085309941919618186267140501870856173174654525838912289889085202514128089692388083353653807625633046581877161501565826926935273373696 binary64)) #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)))
#s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1))
Outputs
(*.f64 (+.f64 d3 d2) d1)
(*.f64 d1 (+.f64 d2 d3))
(if (<=.f64 (+.f64 (*.f64 d1 d2) (*.f64 d1 d3)) #s(literal -253/50600563326827654588123836679729326762389162441035529589225339506857584891998836722990095925359281123796769466079202977847452184346448369216753349985184627480379356069141590341116726935523304085309941919618186267140501870856173174654525838912289889085202514128089692388083353653807625633046581877161501565826926935273373696 binary64)) #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1)) #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1)))
(if (<=.f64 (+.f64 (*.f64 d1 d3) (*.f64 d1 d2)) #s(literal -253/50600563326827654588123836679729326762389162441035529589225339506857584891998836722990095925359281123796769466079202977847452184346448369216753349985184627480379356069141590341116726935523304085309941919618186267140501870856173174654525838912289889085202514128089692388083353653807625633046581877161501565826926935273373696 binary64)) #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d1 d2)) #s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d1 d3)))
#s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1))
#s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d1 d2))

soundness1.1s (31.5%)

Memory
17.8MiB live, 295.1MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0613
0911
12711
219111
3199311
0814111
029312
1103312
2297312
3727312
42233312
54347312
65478312
76122312
86309312
96426312
106730312
116770312
126803312
137013312
147027312
157032312
167035312
177037312
187037312
08429312
Stop Event
done
iter limit
node limit
iter limit
node limit
iter limit
Compiler

Compiled 48 to 33 computations (31.3% saved)

preprocess224.0ms (6.6%)

Memory
-11.1MiB live, 144.7MiB allocated
Remove

(sort d2 d3)

(negabs d1)

Compiler

Compiled 138 to 108 computations (21.7% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...