Diagrams.Solve.Polynomial:cubForm from diagrams-solve-0.1, F

Time bar (total: 1.1s)

analyze0.0ms (0%)

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 8 to 6 computations (25% saved)

Precisions
Click to see histograms. Total time spent on operations: 0.0ms
ival-mult: 0.0ms (0% of total)
const: 0.0ms (0% of total)
backward-pass: 0.0ms (0% of total)

sample627.0ms (56.8%)

Results
451.0ms8256×0valid
Precisions
Click to see histograms. Total time spent on operations: 140.0ms
ival-mult: 127.0ms (90.6% of total)
const: 10.0ms (7.1% of total)
backward-pass: 3.0ms (2.1% of total)
Bogosity

preprocess29.0ms (2.6%)

Algorithm
egg-herbie
Rules
226×fnmadd-define
208×fma-define
192×fnmsub-define
192×fmsub-define
80×distribute-lft-neg-in
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01432
14530
211330
328430
443330
570830
685230
055
195
2165
3185
0185
Stop Event
iter limit
saturated
saturated
Calls
Call 1
Inputs
(* (* x 27) y)
Outputs
(* (* x 27) y)
(*.f64 x (*.f64 #s(literal 27 binary64) y))
Call 2
Inputs
(* (* x 27) y)
(* (* (neg x) 27) y)
(* (* x 27) (neg y))
(neg (* (* (neg x) 27) y))
(neg (* (* x 27) (neg y)))
(* (* y 27) x)
Outputs
(* (* x 27) y)
(* x (* 27 y))
(* (* (neg x) 27) y)
(* x (* y -27))
(* (* x 27) (neg y))
(* x (* y -27))
(neg (* (* (neg x) 27) y))
(* x (* 27 y))
(neg (* (* x 27) (neg y)))
(* x (* 27 y))
(* (* y 27) x)
(* x (* 27 y))
Symmetry

(negabs x)

(negabs y)

(sort x y)

explain60.0ms (5.4%)

FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
00-0-x
00-0-(*.f64 x #s(literal 27 binary64))
00-0-#s(literal 27 binary64)
00-0-y
00-0-(*.f64 (*.f64 x #s(literal 27 binary64)) y)
Results
42.0ms512×0valid
Compiler

Compiled 35 to 17 computations (51.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 10.0ms
ival-mult: 9.0ms (91.2% of total)
const: 1.0ms (10.1% of total)
backward-pass: 0.0ms (0% of total)

eval0.0ms (0%)

Compiler

Compiled 7 to 5 computations (28.6% saved)

prune1.0ms (0.1%)

Alt Table
Click to see full alt table
StatusAccuracyProgram
99.7%
(*.f64 (*.f64 x #s(literal 27 binary64)) y)
99.3%
(*.f64 x (*.f64 #s(literal 27 binary64) y))
Compiler

Compiled 14 to 10 computations (28.6% saved)

simplify9.0ms (0.8%)

Algorithm
egg-herbie
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 x #s(literal 27 binary64))
cost-diff0
(*.f64 (*.f64 x #s(literal 27 binary64)) y)
cost-diff0
(*.f64 #s(literal 27 binary64) y)
cost-diff0
(*.f64 x (*.f64 #s(literal 27 binary64) y))
Rules
24×*-lowering-*.f32
24×*-lowering-*.f64
10×*-commutative
associate-*r*
associate-*l*
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0722
11122
21722
31722
01722
Stop Event
iter limit
saturated
Calls
Call 1
Inputs
(* x (* 27 y))
x
(* 27 y)
27
y
(* (* x 27) y)
(* x 27)
x
27
y
Outputs
(* x (* 27 y))
(*.f64 x (*.f64 #s(literal 27 binary64) y))
x
(* 27 y)
(*.f64 #s(literal 27 binary64) y)
27
#s(literal 27 binary64)
y
(* (* x 27) y)
(*.f64 x (*.f64 #s(literal 27 binary64) y))
(* x 27)
(*.f64 x #s(literal 27 binary64))
x
27
#s(literal 27 binary64)
y

localize37.0ms (3.4%)

Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy100.0%
(*.f64 x #s(literal 27 binary64))
accuracy99.7%
(*.f64 (*.f64 x #s(literal 27 binary64)) y)
accuracy100.0%
(*.f64 #s(literal 27 binary64) y)
accuracy99.3%
(*.f64 x (*.f64 #s(literal 27 binary64) y))
Results
28.0ms256×0valid
Compiler

Compiled 25 to 8 computations (68% saved)

Precisions
Click to see histograms. Total time spent on operations: 8.0ms
ival-mult: 7.0ms (90.9% of total)
const: 0.0ms (0% of total)
backward-pass: 0.0ms (0% of total)

series5.0ms (0.4%)

Counts
4 → 72
Calls
Call 1
Inputs
#<alt (* x (* 27 y))>
#<alt (* 27 y)>
#<alt (* (* x 27) y)>
#<alt (* x 27)>
Outputs
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 y)>
#<alt (* 27 y)>
#<alt (* 27 y)>
#<alt (* 27 y)>
#<alt (* 27 y)>
#<alt (* 27 y)>
#<alt (* 27 y)>
#<alt (* 27 y)>
#<alt (* 27 y)>
#<alt (* 27 y)>
#<alt (* 27 y)>
#<alt (* 27 y)>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 x)>
#<alt (* 27 x)>
#<alt (* 27 x)>
#<alt (* 27 x)>
#<alt (* 27 x)>
#<alt (* 27 x)>
#<alt (* 27 x)>
#<alt (* 27 x)>
#<alt (* 27 x)>
#<alt (* 27 x)>
#<alt (* 27 x)>
#<alt (* 27 x)>
Calls

18 calls:

TimeVariablePointExpression
1.0ms
y
@0
(* x (* 27 y))
1.0ms
x
@0
(* x (* 27 y))
1.0ms
x
@inf
(* x (* 27 y))
1.0ms
y
@inf
(* x (* 27 y))
0.0ms
y
@inf
(* 27 y)

rewrite32.0ms (2.9%)

Algorithm
batch-egg-rewrite
Rules
24×*-lowering-*.f32
24×*-lowering-*.f64
10×*-commutative
associate-*r*
associate-*l*
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0716
11116
21716
31716
01716
Stop Event
iter limit
saturated
Counts
4 → 16
Calls
Call 1
Inputs
(* x (* 27 y))
(* 27 y)
(* (* x 27) y)
(* x 27)
Outputs
(*.f64 x (*.f64 #s(literal 27 binary64) y))
(*.f64 #s(literal 27 binary64) (*.f64 x y))
(*.f64 y (*.f64 x #s(literal 27 binary64)))
(*.f64 (*.f64 #s(literal 27 binary64) y) x)
(*.f64 (*.f64 x #s(literal 27 binary64)) y)
(*.f64 (*.f64 x y) #s(literal 27 binary64))
(*.f64 #s(literal 27 binary64) y)
(*.f64 y #s(literal 27 binary64))
(*.f64 x (*.f64 #s(literal 27 binary64) y))
(*.f64 #s(literal 27 binary64) (*.f64 x y))
(*.f64 y (*.f64 x #s(literal 27 binary64)))
(*.f64 (*.f64 #s(literal 27 binary64) y) x)
(*.f64 (*.f64 x #s(literal 27 binary64)) y)
(*.f64 (*.f64 x y) #s(literal 27 binary64))
(*.f64 x #s(literal 27 binary64))
(*.f64 #s(literal 27 binary64) x)

simplify11.0ms (1%)

Algorithm
egg-herbie
Rules
24×*-lowering-*.f32
24×*-lowering-*.f64
*-commutative
associate-*r*
associate-*l*
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
07312
112312
215312
015312
Stop Event
iter limit
saturated
Counts
72 → 72
Calls
Call 1
Inputs
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 y)
(* 27 y)
(* 27 y)
(* 27 y)
(* 27 y)
(* 27 y)
(* 27 y)
(* 27 y)
(* 27 y)
(* 27 y)
(* 27 y)
(* 27 y)
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 x)
(* 27 x)
(* 27 x)
(* 27 x)
(* 27 x)
(* 27 x)
(* 27 x)
(* 27 x)
(* 27 x)
(* 27 x)
(* 27 x)
(* 27 x)
Outputs
(* 27 (* x y))
(*.f64 #s(literal 27 binary64) (*.f64 x y))
(* 27 (* x y))
(*.f64 #s(literal 27 binary64) (*.f64 x y))
(* 27 (* x y))
(*.f64 #s(literal 27 binary64) (*.f64 x y))
(* 27 (* x y))
(*.f64 #s(literal 27 binary64) (*.f64 x y))
(* 27 (* x y))
(*.f64 #s(literal 27 binary64) (*.f64 x y))
(* 27 (* x y))
(*.f64 #s(literal 27 binary64) (*.f64 x y))
(* 27 (* x y))
(*.f64 #s(literal 27 binary64) (*.f64 x y))
(* 27 (* x y))
(*.f64 #s(literal 27 binary64) (*.f64 x y))
(* 27 (* x y))
(*.f64 #s(literal 27 binary64) (*.f64 x y))
(* 27 (* x y))
(*.f64 #s(literal 27 binary64) (*.f64 x y))
(* 27 (* x y))
(*.f64 #s(literal 27 binary64) (*.f64 x y))
(* 27 (* x y))
(*.f64 #s(literal 27 binary64) (*.f64 x y))
(* 27 (* x y))
(*.f64 #s(literal 27 binary64) (*.f64 x y))
(* 27 (* x y))
(*.f64 #s(literal 27 binary64) (*.f64 x y))
(* 27 (* x y))
(*.f64 #s(literal 27 binary64) (*.f64 x y))
(* 27 (* x y))
(*.f64 #s(literal 27 binary64) (*.f64 x y))
(* 27 (* x y))
(*.f64 #s(literal 27 binary64) (*.f64 x y))
(* 27 (* x y))
(*.f64 #s(literal 27 binary64) (*.f64 x y))
(* 27 (* x y))
(*.f64 #s(literal 27 binary64) (*.f64 x y))
(* 27 (* x y))
(*.f64 #s(literal 27 binary64) (*.f64 x y))
(* 27 (* x y))
(*.f64 #s(literal 27 binary64) (*.f64 x y))
(* 27 (* x y))
(*.f64 #s(literal 27 binary64) (*.f64 x y))
(* 27 (* x y))
(*.f64 #s(literal 27 binary64) (*.f64 x y))
(* 27 (* x y))
(*.f64 #s(literal 27 binary64) (*.f64 x y))
(* 27 y)
(*.f64 #s(literal 27 binary64) y)
(* 27 y)
(*.f64 #s(literal 27 binary64) y)
(* 27 y)
(*.f64 #s(literal 27 binary64) y)
(* 27 y)
(*.f64 #s(literal 27 binary64) y)
(* 27 y)
(*.f64 #s(literal 27 binary64) y)
(* 27 y)
(*.f64 #s(literal 27 binary64) y)
(* 27 y)
(*.f64 #s(literal 27 binary64) y)
(* 27 y)
(*.f64 #s(literal 27 binary64) y)
(* 27 y)
(*.f64 #s(literal 27 binary64) y)
(* 27 y)
(*.f64 #s(literal 27 binary64) y)
(* 27 y)
(*.f64 #s(literal 27 binary64) y)
(* 27 y)
(*.f64 #s(literal 27 binary64) y)
(* 27 (* x y))
(*.f64 #s(literal 27 binary64) (*.f64 x y))
(* 27 (* x y))
(*.f64 #s(literal 27 binary64) (*.f64 x y))
(* 27 (* x y))
(*.f64 #s(literal 27 binary64) (*.f64 x y))
(* 27 (* x y))
(*.f64 #s(literal 27 binary64) (*.f64 x y))
(* 27 (* x y))
(*.f64 #s(literal 27 binary64) (*.f64 x y))
(* 27 (* x y))
(*.f64 #s(literal 27 binary64) (*.f64 x y))
(* 27 (* x y))
(*.f64 #s(literal 27 binary64) (*.f64 x y))
(* 27 (* x y))
(*.f64 #s(literal 27 binary64) (*.f64 x y))
(* 27 (* x y))
(*.f64 #s(literal 27 binary64) (*.f64 x y))
(* 27 (* x y))
(*.f64 #s(literal 27 binary64) (*.f64 x y))
(* 27 (* x y))
(*.f64 #s(literal 27 binary64) (*.f64 x y))
(* 27 (* x y))
(*.f64 #s(literal 27 binary64) (*.f64 x y))
(* 27 (* x y))
(*.f64 #s(literal 27 binary64) (*.f64 x y))
(* 27 (* x y))
(*.f64 #s(literal 27 binary64) (*.f64 x y))
(* 27 (* x y))
(*.f64 #s(literal 27 binary64) (*.f64 x y))
(* 27 (* x y))
(*.f64 #s(literal 27 binary64) (*.f64 x y))
(* 27 (* x y))
(*.f64 #s(literal 27 binary64) (*.f64 x y))
(* 27 (* x y))
(*.f64 #s(literal 27 binary64) (*.f64 x y))
(* 27 (* x y))
(*.f64 #s(literal 27 binary64) (*.f64 x y))
(* 27 (* x y))
(*.f64 #s(literal 27 binary64) (*.f64 x y))
(* 27 (* x y))
(*.f64 #s(literal 27 binary64) (*.f64 x y))
(* 27 (* x y))
(*.f64 #s(literal 27 binary64) (*.f64 x y))
(* 27 (* x y))
(*.f64 #s(literal 27 binary64) (*.f64 x y))
(* 27 (* x y))
(*.f64 #s(literal 27 binary64) (*.f64 x y))
(* 27 x)
(*.f64 #s(literal 27 binary64) x)
(* 27 x)
(*.f64 #s(literal 27 binary64) x)
(* 27 x)
(*.f64 #s(literal 27 binary64) x)
(* 27 x)
(*.f64 #s(literal 27 binary64) x)
(* 27 x)
(*.f64 #s(literal 27 binary64) x)
(* 27 x)
(*.f64 #s(literal 27 binary64) x)
(* 27 x)
(*.f64 #s(literal 27 binary64) x)
(* 27 x)
(*.f64 #s(literal 27 binary64) x)
(* 27 x)
(*.f64 #s(literal 27 binary64) x)
(* 27 x)
(*.f64 #s(literal 27 binary64) x)
(* 27 x)
(*.f64 #s(literal 27 binary64) x)
(* 27 x)
(*.f64 #s(literal 27 binary64) x)

eval7.0ms (0.7%)

Compiler

Compiled 442 to 16 computations (96.4% saved)

prune3.0ms (0.3%)

Pruning

3 alts after pruning (1 fresh and 2 done)

PrunedKeptTotal
New87188
Fresh000
Picked022
Done000
Total87390
Accuracy
100.0%
Counts
90 → 3
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.6%
(*.f64 (*.f64 x y) #s(literal 27 binary64))
99.7%
(*.f64 (*.f64 x #s(literal 27 binary64)) y)
99.3%
(*.f64 x (*.f64 #s(literal 27 binary64) y))
Compiler

Compiled 21 to 15 computations (28.6% saved)

simplify5.0ms (0.4%)

Algorithm
egg-herbie
Localize:

Found 2 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 x y)
cost-diff0
(*.f64 (*.f64 x y) #s(literal 27 binary64))
Rules
24×*-lowering-*.f32
24×*-lowering-*.f64
10×*-commutative
associate-*r*
associate-*l*
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0511
1911
21611
31811
01811
Stop Event
iter limit
saturated
Calls
Call 1
Inputs
(* (* x y) 27)
(* x y)
x
y
27
Outputs
(* (* x y) 27)
(*.f64 x (*.f64 y #s(literal 27 binary64)))
(* x y)
(*.f64 x y)
x
y
27
#s(literal 27 binary64)

localize25.0ms (2.3%)

Localize:

Found 2 expressions of interest:

NewMetricScoreProgram
accuracy100.0%
(*.f64 x y)
accuracy99.6%
(*.f64 (*.f64 x y) #s(literal 27 binary64))
Results
19.0ms256×0valid
Compiler

Compiled 14 to 6 computations (57.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 4.0ms
ival-mult: 4.0ms (91.8% of total)
const: 0.0ms (0% of total)
backward-pass: 0.0ms (0% of total)

series2.0ms (0.2%)

Counts
2 → 48
Calls
Call 1
Inputs
#<alt (* (* x y) 27)>
#<alt (* x y)>
Outputs
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* 27 (* x y))>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
Calls

12 calls:

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

rewrite15.0ms (1.4%)

Algorithm
batch-egg-rewrite
Rules
24×*-lowering-*.f32
24×*-lowering-*.f64
10×*-commutative
associate-*r*
associate-*l*
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
058
198
2168
3188
0188
Stop Event
iter limit
saturated
Counts
2 → 8
Calls
Call 1
Inputs
(* (* x y) 27)
(* x y)
Outputs
(*.f64 x (*.f64 y #s(literal 27 binary64)))
(*.f64 y (*.f64 x #s(literal 27 binary64)))
(*.f64 (*.f64 x y) #s(literal 27 binary64))
(*.f64 #s(literal 27 binary64) (*.f64 x y))
(*.f64 (*.f64 y #s(literal 27 binary64)) x)
(*.f64 (*.f64 x #s(literal 27 binary64)) y)
(*.f64 x y)
(*.f64 y x)

simplify9.0ms (0.8%)

Algorithm
egg-herbie
Rules
24×*-lowering-*.f32
24×*-lowering-*.f64
10×*-commutative
associate-*r*
associate-*l*
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
05192
19192
216192
318192
018192
Stop Event
iter limit
saturated
Counts
48 → 48
Calls
Call 1
Inputs
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* 27 (* x y))
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
Outputs
(* 27 (* x y))
(*.f64 x (*.f64 #s(literal 27 binary64) y))
(* 27 (* x y))
(*.f64 x (*.f64 #s(literal 27 binary64) y))
(* 27 (* x y))
(*.f64 x (*.f64 #s(literal 27 binary64) y))
(* 27 (* x y))
(*.f64 x (*.f64 #s(literal 27 binary64) y))
(* 27 (* x y))
(*.f64 x (*.f64 #s(literal 27 binary64) y))
(* 27 (* x y))
(*.f64 x (*.f64 #s(literal 27 binary64) y))
(* 27 (* x y))
(*.f64 x (*.f64 #s(literal 27 binary64) y))
(* 27 (* x y))
(*.f64 x (*.f64 #s(literal 27 binary64) y))
(* 27 (* x y))
(*.f64 x (*.f64 #s(literal 27 binary64) y))
(* 27 (* x y))
(*.f64 x (*.f64 #s(literal 27 binary64) y))
(* 27 (* x y))
(*.f64 x (*.f64 #s(literal 27 binary64) y))
(* 27 (* x y))
(*.f64 x (*.f64 #s(literal 27 binary64) y))
(* 27 (* x y))
(*.f64 x (*.f64 #s(literal 27 binary64) y))
(* 27 (* x y))
(*.f64 x (*.f64 #s(literal 27 binary64) y))
(* 27 (* x y))
(*.f64 x (*.f64 #s(literal 27 binary64) y))
(* 27 (* x y))
(*.f64 x (*.f64 #s(literal 27 binary64) y))
(* 27 (* x y))
(*.f64 x (*.f64 #s(literal 27 binary64) y))
(* 27 (* x y))
(*.f64 x (*.f64 #s(literal 27 binary64) y))
(* 27 (* x y))
(*.f64 x (*.f64 #s(literal 27 binary64) y))
(* 27 (* x y))
(*.f64 x (*.f64 #s(literal 27 binary64) y))
(* 27 (* x y))
(*.f64 x (*.f64 #s(literal 27 binary64) y))
(* 27 (* x y))
(*.f64 x (*.f64 #s(literal 27 binary64) y))
(* 27 (* x y))
(*.f64 x (*.f64 #s(literal 27 binary64) y))
(* 27 (* x y))
(*.f64 x (*.f64 #s(literal 27 binary64) y))
(* x y)
(*.f64 x y)
(* x y)
(*.f64 x y)
(* x y)
(*.f64 x y)
(* x y)
(*.f64 x y)
(* x y)
(*.f64 x y)
(* x y)
(*.f64 x y)
(* x y)
(*.f64 x y)
(* x y)
(*.f64 x y)
(* x y)
(*.f64 x y)
(* x y)
(*.f64 x y)
(* x y)
(*.f64 x y)
(* x y)
(*.f64 x y)
(* x y)
(*.f64 x y)
(* x y)
(*.f64 x y)
(* x y)
(*.f64 x y)
(* x y)
(*.f64 x y)
(* x y)
(*.f64 x y)
(* x y)
(*.f64 x y)
(* x y)
(*.f64 x y)
(* x y)
(*.f64 x y)
(* x y)
(*.f64 x y)
(* x y)
(*.f64 x y)
(* x y)
(*.f64 x y)
(* x y)
(*.f64 x y)

eval5.0ms (0.4%)

Compiler

Compiled 282 to 16 computations (94.3% saved)

prune3.0ms (0.2%)

Pruning

3 alts after pruning (0 fresh and 3 done)

PrunedKeptTotal
New56056
Fresh000
Picked011
Done022
Total56359
Accuracy
100.0%
Counts
59 → 3
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.6%
(*.f64 (*.f64 x y) #s(literal 27 binary64))
99.7%
(*.f64 (*.f64 x #s(literal 27 binary64)) y)
99.3%
(*.f64 x (*.f64 #s(literal 27 binary64) y))
Compiler

Compiled 38 to 24 computations (36.8% saved)

regimes8.0ms (0.8%)

Counts
3 → 1
Calls
Call 1
Inputs
(*.f64 x (*.f64 #s(literal 27 binary64) y))
(*.f64 (*.f64 x #s(literal 27 binary64)) y)
(*.f64 (*.f64 x y) #s(literal 27 binary64))
Outputs
(*.f64 (*.f64 x #s(literal 27 binary64)) y)
Calls

4 calls:

3.0ms
(*.f64 (*.f64 x #s(literal 27 binary64)) y)
2.0ms
(*.f64 x #s(literal 27 binary64))
2.0ms
x
2.0ms
y
Results
AccuracySegmentsBranch
99.7%1x
99.7%1y
99.7%1(*.f64 (*.f64 x #s(literal 27 binary64)) y)
99.7%1(*.f64 x #s(literal 27 binary64))
Compiler

Compiled 18 to 13 computations (27.8% saved)

regimes3.0ms (0.2%)

Accuracy

Total 0.0b remaining (0%)

Threshold costs 0b (0%)

Counts
1 → 1
Calls
Call 1
Inputs
(*.f64 x (*.f64 #s(literal 27 binary64) y))
Outputs
(*.f64 x (*.f64 #s(literal 27 binary64) y))
Calls

2 calls:

1.0ms
x
1.0ms
y
Results
AccuracySegmentsBranch
99.3%1x
99.3%1y
Compiler

Compiled 6 to 4 computations (33.3% saved)

simplify8.0ms (0.7%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0710
11110
Stop Event
saturated
Calls
Call 1
Inputs
(*.f64 (*.f64 x #s(literal 27 binary64)) y)
(*.f64 x (*.f64 #s(literal 27 binary64) y))
Outputs
(*.f64 (*.f64 x #s(literal 27 binary64)) y)
(*.f64 x (*.f64 #s(literal 27 binary64) y))

soundness5.0ms (0.4%)

Rules
24×*-lowering-*.f32
24×*-lowering-*.f64
10×*-commutative
associate-*r*
associate-*l*
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
055
195
2165
3185
0185
Stop Event
done
iter limit
saturated
Compiler

Compiled 19 to 12 computations (36.8% saved)

preprocess196.0ms (17.8%)

Compiler

Compiled 164 to 114 computations (30.5% saved)

end0.0ms (0%)

Profiling

Loading profile data...