FastMath dist

Time bar (total: 3.4s)

start0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

analyze0.0ms (0%)

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

Compiled 9 to 8 computations (11.1% saved)

sample584.0ms (17.1%)

Memory
30.3MiB live, 653.7MiB allocated
Samples
354.0ms8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 165.0ms
ival-mult: 121.0ms (73.3% of total)
ival-add: 36.0ms (21.8% of total)
ival-true: 5.0ms (3% of total)
ival-assert: 3.0ms (1.8% of total)
Bogosity

explain189.0ms (5.5%)

Memory
-11.3MiB live, 70.8MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
60-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-rescue60
(*.f64 d1 d2)overflow28
(*.f64 d1 d3)overflow29
Confusion
Predicted +Predicted -
+60
-0250
Precision
1.0
Recall
1.0
Confusion?
Predicted +Predicted MaybePredicted -
+600
-00250
Precision?
1.0
Recall?
1.0
Freqs
test
numberfreq
0250
16
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
155.0ms512×0valid
Compiler

Compiled 59 to 28 computations (52.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 86.0ms
ival-mult: 83.0ms (96.9% of total)
ival-add: 2.0ms (2.3% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

preprocess34.0ms (1%)

Memory
-3.0MiB live, 35.8MiB 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.4MiB live, 0.4MiB allocated
Compiler

Compiled 0 to 3 computations (-∞% saved)

prune0.0ms (0%)

Memory
0.7MiB live, 0.7MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
97.6%
(+.f64 (*.f64 d1 d2) (*.f64 d1 d3))
Compiler

Compiled 7 to 6 computations (14.3% saved)

simplify3.0ms (0.1%)

Memory
3.0MiB live, 3.0MiB 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
23.5MiB live, 23.5MiB allocated
Localize:

Found 3 expressions of interest:

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

Compiled 34 to 14 computations (58.8% saved)

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

series8.0ms (0.2%)

Memory
-28.7MiB live, 10.6MiB 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
1.0ms
d1
@-inf
((+ (* 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
d2
@inf
((+ (* d1 d2) (* d1 d3)) (* d1 d2) (* d1 d3))
1.0ms
d2
@-inf
((+ (* d1 d2) (* d1 d3)) (* d1 d2) (* d1 d3))

simplify388.0ms (11.4%)

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

rewrite233.0ms (6.8%)

Memory
9.3MiB live, 217.7MiB 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>

eval31.0ms (0.9%)

Memory
8.1MiB live, 83.3MiB allocated
Compiler

Compiled 7 188 to 618 computations (91.4% saved)

prune73.0ms (2.1%)

Memory
-22.5MiB live, 16.3MiB 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
99.2%
(fma.f64 d3 d1 (*.f64 d2 d1))
100.0%
(*.f64 (+.f64 d3 d2) d1)
53.8%
#s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1))
55.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.3MiB live, 3.3MiB 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

localize33.0ms (1%)

Memory
11.5MiB live, 60.2MiB allocated
Localize:

Found 8 expressions of interest:

NewMetricScoreProgram
accuracy0
(*.f64 d2 d1)
accuracy0.49999449521112044
(fma.f64 d3 d1 (*.f64 d2 d1))
accuracy0
(+.f64 d3 d2)
accuracy0.0078125
(*.f64 (+.f64 d3 d2) d1)
accuracy0
(*.f64 d3 d1)
accuracy29.558052122006732
#s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1))
accuracy0
(*.f64 d2 d1)
accuracy28.80347662087615
#s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1))
Samples
26.0ms256×0valid
Compiler

Compiled 91 to 23 computations (74.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 15.0ms
ival-mult: 12.0ms (78.6% of total)
ival-add: 3.0ms (19.6% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series10.0ms (0.3%)

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

simplify135.0ms (4%)

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

rewrite191.0ms (5.6%)

Memory
3.1MiB live, 150.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>

eval127.0ms (3.7%)

Memory
-17.9MiB live, 73.3MiB allocated
Compiler

Compiled 10 917 to 699 computations (93.6% saved)

prune18.0ms (0.5%)

Memory
4.8MiB live, 41.9MiB 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
99.2%
(fma.f64 d3 d1 (*.f64 d2 d1))
100.0%
(*.f64 (+.f64 d3 d2) d1)
53.8%
#s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d3 d1))
55.0%
#s(approx (+ (* d1 d2) (* d1 d3)) (*.f64 d2 d1))
Compiler

Compiled 45 to 33 computations (26.7% saved)

regimes10.0ms (0.3%)

Memory
17.9MiB live, 17.9MiB 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
d1
2.0ms
d3
2.0ms
d2
2.0ms
(+.f64 (*.f64 d1 d2) (*.f64 d1 d3))
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)

regimes7.0ms (0.2%)

Memory
13.2MiB live, 13.2MiB 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:

2.0ms
d2
2.0ms
d1
2.0ms
(+.f64 (*.f64 d1 d2) (*.f64 d1 d3))
2.0ms
d3
Results
AccuracySegmentsBranch
63.9%5d1
85.2%2d2
86.4%2d3
97.2%2(+.f64 (*.f64 d1 d2) (*.f64 d1 d3))
Compiler

Compiled 10 to 15 computations (-50% saved)

regimes8.0ms (0.2%)

Memory
-25.3MiB live, 11.4MiB 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:

4.0ms
d3
1.0ms
d2
1.0ms
d1
1.0ms
(+.f64 (*.f64 d1 d2) (*.f64 d1 d3))
Results
AccuracySegmentsBranch
55.0%1d1
55.0%1d2
55.0%1d3
55.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
-6.178679872964564e-293
0.0
Compiler

Compiled 10 to 12 computations (-20% saved)

simplify25.0ms (0.7%)

Memory
9.8MiB live, 45.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 -2247116418577895/44942328371557897693232629769725618340449424473557664318357520289433168951375240783177119330601884005280028469967848339414697442203604155623211857659868531094441973356216371319075554900311523529863270738021251442209537670585615720368478277635206809290837627671146574559986811484619929076208839082406056034304 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 -2247116418577895/44942328371557897693232629769725618340449424473557664318357520289433168951375240783177119330601884005280028469967848339414697442203604155623211857659868531094441973356216371319075554900311523529863270738021251442209537670585615720368478277635206809290837627671146574559986811484619929076208839082406056034304 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 -2247116418577895/44942328371557897693232629769725618340449424473557664318357520289433168951375240783177119330601884005280028469967848339414697442203604155623211857659868531094441973356216371319075554900311523529863270738021251442209537670585615720368478277635206809290837627671146574559986811484619929076208839082406056034304 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 (33%)

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

preprocess163.0ms (4.8%)

Memory
10.9MiB live, 135.2MiB 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...