FastMath test5

Time bar (total: 1.9min)

analyze0.0ms (0%)

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

Compiled 21 to 11 computations (47.6% saved)

sample748.0ms (0.7%)

Memory
13.1MiB live, 1 108.0MiB allocated
Samples
557.0ms8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 396.0ms
ival-mult: 388.0ms (98.1% of total)
ival-true: 5.0ms (1.3% of total)
ival-assert: 3.0ms (0.8% of total)
Bogosity

preprocess36.0ms (0%)

Memory
9.8MiB live, 48.3MiB allocated
Algorithm
egg-herbie
Rules
366×associate-*r*
154×associate-*l*
114×distribute-lft-neg-in
110×distribute-lft-neg-out
92×unsub-neg
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01950
18134
233022
380410
491310
596710
696810
796810
896810
0915
12511
2527
3723
4843
5873
0873
Stop Event
iter limit
saturated
saturated
Calls
Call 1
Inputs
(* (* d1 (* (* (* (* (* d1 (* d1 d1)) d1) d1) (* d1 d1)) d1)) d1)
Outputs
(* (* d1 (* (* (* (* (* d1 (* d1 d1)) d1) d1) (* d1 d1)) d1)) d1)
(*.f64 (*.f64 d1 d1) (*.f64 (*.f64 (*.f64 d1 d1) (*.f64 d1 d1)) (*.f64 (*.f64 d1 d1) (*.f64 d1 d1))))
Call 2
Inputs
(* (* d1 (* (* (* (* (* d1 (* d1 d1)) d1) d1) (* d1 d1)) d1)) d1)
(* (* (neg d1) (* (* (* (* (* (neg d1) (* (neg d1) (neg d1))) (neg d1)) (neg d1)) (* (neg d1) (neg d1))) (neg d1))) (neg d1))
(neg (* (* (neg d1) (* (* (* (* (* (neg d1) (* (neg d1) (neg d1))) (neg d1)) (neg d1)) (* (neg d1) (neg d1))) (neg d1))) (neg d1)))
Outputs
(* (* d1 (* (* (* (* (* d1 (* d1 d1)) d1) d1) (* d1 d1)) d1)) d1)
(pow d1 10)
(* (* (neg d1) (* (* (* (* (* (neg d1) (* (neg d1) (neg d1))) (neg d1)) (neg d1)) (* (neg d1) (neg d1))) (neg d1))) (neg d1))
(pow d1 10)
(neg (* (* (neg d1) (* (* (* (* (* (neg d1) (* (neg d1) (neg d1))) (neg d1)) (neg d1)) (* (neg d1) (neg d1))) (neg d1))) (neg d1)))
(neg (pow d1 10))
Symmetry

(abs d1)

explain136.0ms (0.1%)

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

Compiled 222 to 40 computations (82% saved)

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

eval0.0ms (0%)

Memory
0.3MiB live, 0.3MiB allocated
Compiler

Compiled 1 to 1 computations (0% saved)

prune1.0ms (0%)

Memory
1.0MiB live, 1.0MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.9%
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1)
Compiler

Compiled 20 to 9 computations (55% saved)

simplify6.0ms (0%)

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

Found 4 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1))
cost-diff0
(*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)
cost-diff0
(*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1))
cost-diff0
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1)
Rules
90×*-lowering-*.f32
90×*-lowering-*.f64
42×associate-*r*
28×associate-*l*
24×pow-lowering-pow.f64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0967
12549
25233
37225
48425
58725
08725
Stop Event
iter limit
saturated
Calls
Call 1
Inputs
(* (* d1 (* (* (* (* (* d1 (* d1 d1)) d1) d1) (* d1 d1)) d1)) d1)
(* d1 (* (* (* (* (* d1 (* d1 d1)) d1) d1) (* d1 d1)) d1))
d1
(* (* (* (* (* d1 (* d1 d1)) d1) d1) (* d1 d1)) d1)
(* (* (* (* d1 (* d1 d1)) d1) d1) (* d1 d1))
(* (* (* d1 (* d1 d1)) d1) d1)
(* (* d1 (* d1 d1)) d1)
(* d1 (* d1 d1))
(* d1 d1)
Outputs
(* (* d1 (* (* (* (* (* d1 (* d1 d1)) d1) d1) (* d1 d1)) d1)) d1)
(*.f64 (*.f64 d1 d1) (*.f64 (*.f64 (*.f64 d1 d1) (*.f64 d1 d1)) (*.f64 (*.f64 d1 d1) (*.f64 d1 d1))))
(* d1 (* (* (* (* (* d1 (* d1 d1)) d1) d1) (* d1 d1)) d1))
(*.f64 d1 (*.f64 (*.f64 (*.f64 d1 d1) (*.f64 d1 d1)) (*.f64 (*.f64 d1 d1) (*.f64 d1 d1))))
d1
(* (* (* (* (* d1 (* d1 d1)) d1) d1) (* d1 d1)) d1)
(*.f64 (*.f64 (*.f64 d1 d1) (*.f64 d1 d1)) (*.f64 (*.f64 d1 d1) (*.f64 d1 d1)))
(* (* (* (* d1 (* d1 d1)) d1) d1) (* d1 d1))
(*.f64 (*.f64 d1 (*.f64 d1 d1)) (*.f64 (*.f64 d1 d1) (*.f64 d1 d1)))
(* (* (* d1 (* d1 d1)) d1) d1)
(*.f64 d1 (*.f64 (*.f64 d1 d1) (*.f64 d1 d1)))
(* (* d1 (* d1 d1)) d1)
(*.f64 (*.f64 d1 d1) (*.f64 d1 d1))
(* d1 (* d1 d1))
(*.f64 d1 (*.f64 d1 d1))
(* d1 d1)
(*.f64 d1 d1)

localize36.0ms (0%)

Memory
-11.5MiB live, 31.7MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy99.9%
(*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1)
accuracy99.9%
(*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1))
accuracy99.9%
(*.f64 d1 (*.f64 d1 d1))
accuracy99.9%
(*.f64 (*.f64 d1 (*.f64 d1 d1)) d1)
Samples
24.0ms256×0valid
Compiler

Compiled 91 to 11 computations (87.9% saved)

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

series6.0ms (0%)

Memory
7.0MiB live, 7.0MiB allocated
Counts
7 → 84
Calls
Call 1
Inputs
#<alt (* (* d1 (* (* (* (* (* d1 (* d1 d1)) d1) d1) (* d1 d1)) d1)) d1)>
#<alt (* d1 (* (* (* (* (* d1 (* d1 d1)) d1) d1) (* d1 d1)) d1))>
#<alt (* (* (* (* (* d1 (* d1 d1)) d1) d1) (* d1 d1)) d1)>
#<alt (* (* (* (* d1 (* d1 d1)) d1) d1) (* d1 d1))>
#<alt (* (* d1 (* d1 d1)) d1)>
#<alt (* d1 (* d1 d1))>
#<alt (* (* (* d1 (* d1 d1)) d1) d1)>
Outputs
#<alt (pow d1 10)>
#<alt (pow d1 10)>
#<alt (pow d1 10)>
#<alt (pow d1 10)>
#<alt (pow d1 10)>
#<alt (pow d1 10)>
#<alt (pow d1 10)>
#<alt (pow d1 10)>
#<alt (pow d1 10)>
#<alt (pow d1 10)>
#<alt (pow d1 10)>
#<alt (pow d1 10)>
#<alt (pow d1 9)>
#<alt (pow d1 9)>
#<alt (pow d1 9)>
#<alt (pow d1 9)>
#<alt (pow d1 9)>
#<alt (pow d1 9)>
#<alt (pow d1 9)>
#<alt (pow d1 9)>
#<alt (pow d1 9)>
#<alt (pow d1 9)>
#<alt (pow d1 9)>
#<alt (pow d1 9)>
#<alt (pow d1 8)>
#<alt (pow d1 8)>
#<alt (pow d1 8)>
#<alt (pow d1 8)>
#<alt (pow d1 8)>
#<alt (pow d1 8)>
#<alt (pow d1 8)>
#<alt (pow d1 8)>
#<alt (pow d1 8)>
#<alt (pow d1 8)>
#<alt (pow d1 8)>
#<alt (pow d1 8)>
#<alt (pow d1 7)>
#<alt (pow d1 7)>
#<alt (pow d1 7)>
#<alt (pow d1 7)>
#<alt (pow d1 7)>
#<alt (pow d1 7)>
#<alt (pow d1 7)>
#<alt (pow d1 7)>
#<alt (pow d1 7)>
#<alt (pow d1 7)>
#<alt (pow d1 7)>
#<alt (pow d1 7)>
#<alt (pow d1 4)>
#<alt (pow d1 4)>
#<alt (pow d1 4)>
#<alt (pow d1 4)>
#<alt (pow d1 4)>
#<alt (pow d1 4)>
#<alt (pow d1 4)>
#<alt (pow d1 4)>
#<alt (pow d1 4)>
#<alt (pow d1 4)>
#<alt (pow d1 4)>
#<alt (pow d1 4)>
#<alt (pow d1 3)>
#<alt (pow d1 3)>
#<alt (pow d1 3)>
#<alt (pow d1 3)>
#<alt (pow d1 3)>
#<alt (pow d1 3)>
#<alt (pow d1 3)>
#<alt (pow d1 3)>
#<alt (pow d1 3)>
#<alt (pow d1 3)>
#<alt (pow d1 3)>
#<alt (pow d1 3)>
#<alt (pow d1 5)>
#<alt (pow d1 5)>
#<alt (pow d1 5)>
#<alt (pow d1 5)>
#<alt (pow d1 5)>
#<alt (pow d1 5)>
#<alt (pow d1 5)>
#<alt (pow d1 5)>
#<alt (pow d1 5)>
#<alt (pow d1 5)>
#<alt (pow d1 5)>
#<alt (pow d1 5)>
Calls

21 calls:

TimeVariablePointExpression
1.0ms
d1
@0
(* (* d1 (* (* (* (* (* d1 (* d1 d1)) d1) d1) (* d1 d1)) d1)) d1)
0.0ms
d1
@0
(* (* (* (* d1 (* d1 d1)) d1) d1) (* d1 d1))
0.0ms
d1
@0
(* d1 (* (* (* (* (* d1 (* d1 d1)) d1) d1) (* d1 d1)) d1))
0.0ms
d1
@-inf
(* d1 (* (* (* (* (* d1 (* d1 d1)) d1) d1) (* d1 d1)) d1))
0.0ms
d1
@inf
(* (* d1 (* (* (* (* (* d1 (* d1 d1)) d1) d1) (* d1 d1)) d1)) d1)

rewrite120.0ms (0.1%)

Memory
-19.2MiB live, 58.8MiB allocated
Algorithm
batch-egg-rewrite
Rules
1 048×pow-exp
470×flip3-+
470×pow-prod-down
420×pow-to-exp
350×frac-2neg
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
09105
12763
27335
318421
497521
530067
0104397
Stop Event
iter limit
node limit
Counts
7 → 14
Calls
Call 1
Inputs
(* (* d1 (* (* (* (* (* d1 (* d1 d1)) d1) d1) (* d1 d1)) d1)) d1)
(* d1 (* (* (* (* (* d1 (* d1 d1)) d1) d1) (* d1 d1)) d1))
(* (* (* (* (* d1 (* d1 d1)) d1) d1) (* d1 d1)) d1)
(* (* (* (* d1 (* d1 d1)) d1) d1) (* d1 d1))
(* (* d1 (* d1 d1)) d1)
(* d1 (* d1 d1))
(* (* (* d1 (* d1 d1)) d1) d1)
Outputs
#s(literal 1 binary64)
d1
#s(literal 1 binary64)
d1
#s(literal 1 binary64)
d1
#s(literal 1 binary64)
d1
#s(literal 1 binary64)
d1
#s(literal 1 binary64)
d1
#s(literal 1 binary64)
d1

simplify8.0ms (0%)

Memory
16.0MiB live, 16.0MiB allocated
Algorithm
egg-herbie
Rules
14×pow-lowering-pow.f64
14×pow-lowering-pow.f32
*-lowering-*.f32
*-lowering-*.f64
cube-mult
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
015252
118252
018252
Stop Event
iter limit
saturated
Counts
84 → 84
Calls
Call 1
Inputs
(pow d1 10)
(pow d1 10)
(pow d1 10)
(pow d1 10)
(pow d1 10)
(pow d1 10)
(pow d1 10)
(pow d1 10)
(pow d1 10)
(pow d1 10)
(pow d1 10)
(pow d1 10)
(pow d1 9)
(pow d1 9)
(pow d1 9)
(pow d1 9)
(pow d1 9)
(pow d1 9)
(pow d1 9)
(pow d1 9)
(pow d1 9)
(pow d1 9)
(pow d1 9)
(pow d1 9)
(pow d1 8)
(pow d1 8)
(pow d1 8)
(pow d1 8)
(pow d1 8)
(pow d1 8)
(pow d1 8)
(pow d1 8)
(pow d1 8)
(pow d1 8)
(pow d1 8)
(pow d1 8)
(pow d1 7)
(pow d1 7)
(pow d1 7)
(pow d1 7)
(pow d1 7)
(pow d1 7)
(pow d1 7)
(pow d1 7)
(pow d1 7)
(pow d1 7)
(pow d1 7)
(pow d1 7)
(pow d1 4)
(pow d1 4)
(pow d1 4)
(pow d1 4)
(pow d1 4)
(pow d1 4)
(pow d1 4)
(pow d1 4)
(pow d1 4)
(pow d1 4)
(pow d1 4)
(pow d1 4)
(pow d1 3)
(pow d1 3)
(pow d1 3)
(pow d1 3)
(pow d1 3)
(pow d1 3)
(pow d1 3)
(pow d1 3)
(pow d1 3)
(pow d1 3)
(pow d1 3)
(pow d1 3)
(pow d1 5)
(pow d1 5)
(pow d1 5)
(pow d1 5)
(pow d1 5)
(pow d1 5)
(pow d1 5)
(pow d1 5)
(pow d1 5)
(pow d1 5)
(pow d1 5)
(pow d1 5)
Outputs
(pow d1 10)
(pow.f64 d1 #s(literal 10 binary64))
(pow d1 10)
(pow.f64 d1 #s(literal 10 binary64))
(pow d1 10)
(pow.f64 d1 #s(literal 10 binary64))
(pow d1 10)
(pow.f64 d1 #s(literal 10 binary64))
(pow d1 10)
(pow.f64 d1 #s(literal 10 binary64))
(pow d1 10)
(pow.f64 d1 #s(literal 10 binary64))
(pow d1 10)
(pow.f64 d1 #s(literal 10 binary64))
(pow d1 10)
(pow.f64 d1 #s(literal 10 binary64))
(pow d1 10)
(pow.f64 d1 #s(literal 10 binary64))
(pow d1 10)
(pow.f64 d1 #s(literal 10 binary64))
(pow d1 10)
(pow.f64 d1 #s(literal 10 binary64))
(pow d1 10)
(pow.f64 d1 #s(literal 10 binary64))
(pow d1 9)
(pow.f64 d1 #s(literal 9 binary64))
(pow d1 9)
(pow.f64 d1 #s(literal 9 binary64))
(pow d1 9)
(pow.f64 d1 #s(literal 9 binary64))
(pow d1 9)
(pow.f64 d1 #s(literal 9 binary64))
(pow d1 9)
(pow.f64 d1 #s(literal 9 binary64))
(pow d1 9)
(pow.f64 d1 #s(literal 9 binary64))
(pow d1 9)
(pow.f64 d1 #s(literal 9 binary64))
(pow d1 9)
(pow.f64 d1 #s(literal 9 binary64))
(pow d1 9)
(pow.f64 d1 #s(literal 9 binary64))
(pow d1 9)
(pow.f64 d1 #s(literal 9 binary64))
(pow d1 9)
(pow.f64 d1 #s(literal 9 binary64))
(pow d1 9)
(pow.f64 d1 #s(literal 9 binary64))
(pow d1 8)
(pow.f64 d1 #s(literal 8 binary64))
(pow d1 8)
(pow.f64 d1 #s(literal 8 binary64))
(pow d1 8)
(pow.f64 d1 #s(literal 8 binary64))
(pow d1 8)
(pow.f64 d1 #s(literal 8 binary64))
(pow d1 8)
(pow.f64 d1 #s(literal 8 binary64))
(pow d1 8)
(pow.f64 d1 #s(literal 8 binary64))
(pow d1 8)
(pow.f64 d1 #s(literal 8 binary64))
(pow d1 8)
(pow.f64 d1 #s(literal 8 binary64))
(pow d1 8)
(pow.f64 d1 #s(literal 8 binary64))
(pow d1 8)
(pow.f64 d1 #s(literal 8 binary64))
(pow d1 8)
(pow.f64 d1 #s(literal 8 binary64))
(pow d1 8)
(pow.f64 d1 #s(literal 8 binary64))
(pow d1 7)
(pow.f64 d1 #s(literal 7 binary64))
(pow d1 7)
(pow.f64 d1 #s(literal 7 binary64))
(pow d1 7)
(pow.f64 d1 #s(literal 7 binary64))
(pow d1 7)
(pow.f64 d1 #s(literal 7 binary64))
(pow d1 7)
(pow.f64 d1 #s(literal 7 binary64))
(pow d1 7)
(pow.f64 d1 #s(literal 7 binary64))
(pow d1 7)
(pow.f64 d1 #s(literal 7 binary64))
(pow d1 7)
(pow.f64 d1 #s(literal 7 binary64))
(pow d1 7)
(pow.f64 d1 #s(literal 7 binary64))
(pow d1 7)
(pow.f64 d1 #s(literal 7 binary64))
(pow d1 7)
(pow.f64 d1 #s(literal 7 binary64))
(pow d1 7)
(pow.f64 d1 #s(literal 7 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))

eval9.0ms (0%)

Memory
-22.9MiB live, 16.1MiB allocated
Compiler

Compiled 963 to 66 computations (93.1% saved)

prune7.0ms (0%)

Memory
15.7MiB live, 15.7MiB allocated
Pruning

9 alts after pruning (8 fresh and 1 done)

PrunedKeptTotal
New90898
Fresh000
Picked011
Done000
Total90999
Accuracy
100.0%
Counts
99 → 9
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(pow.f64 d1 #s(literal 10 binary64))
99.9%
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1)
89.8%
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 d1 d1) d1) (*.f64 d1 d1)) d1)) d1)
88.6%
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 d1 d1) (*.f64 d1 d1)) d1)) d1)
84.8%
(*.f64 (*.f64 d1 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1)) d1)
75.9%
(*.f64 (*.f64 d1 (*.f64 d1 d1)) d1)
67.4%
(*.f64 (*.f64 d1 d1) d1)
54.4%
(*.f64 d1 d1)
5.6%
d1
Compiler

Compiled 152 to 73 computations (52% saved)

simplify5.0ms (0%)

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

Found 11 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 (*.f64 (*.f64 d1 d1) d1) (*.f64 d1 d1))
cost-diff0
(*.f64 (*.f64 (*.f64 (*.f64 d1 d1) d1) (*.f64 d1 d1)) d1)
cost-diff0
(*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 d1 d1) d1) (*.f64 d1 d1)) d1))
cost-diff0
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 d1 d1) d1) (*.f64 d1 d1)) d1)) d1)
cost-diff0
(*.f64 d1 (*.f64 d1 d1))
cost-diff0
(*.f64 (*.f64 d1 (*.f64 d1 d1)) d1)
cost-diff0
(*.f64 d1 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1))
cost-diff0
(*.f64 (*.f64 d1 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1)) d1)
cost-diff0
(*.f64 d1 d1)
cost-diff0
(*.f64 (*.f64 d1 d1) d1)
cost-diff0
(pow.f64 d1 #s(literal 10 binary64))
Rules
56×*-lowering-*.f32
56×*-lowering-*.f64
24×associate-*r*
18×pow-lowering-pow.f64
18×pow-lowering-pow.f32
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01380
12858
24750
35948
46548
06548
Stop Event
iter limit
saturated
Calls
Call 1
Inputs
(pow d1 10)
d1
10
d1
(* (* d1 d1) d1)
(* d1 d1)
d1
(* (* d1 (* (* d1 (* d1 d1)) d1)) d1)
(* d1 (* (* d1 (* d1 d1)) d1))
d1
(* (* d1 (* d1 d1)) d1)
(* d1 (* d1 d1))
(* d1 d1)
(* (* d1 (* (* (* (* d1 d1) d1) (* d1 d1)) d1)) d1)
(* d1 (* (* (* (* d1 d1) d1) (* d1 d1)) d1))
d1
(* (* (* (* d1 d1) d1) (* d1 d1)) d1)
(* (* (* d1 d1) d1) (* d1 d1))
(* (* d1 d1) d1)
(* d1 d1)
Outputs
(pow d1 10)
(pow.f64 d1 #s(literal 10 binary64))
d1
10
#s(literal 10 binary64)
d1
(* (* d1 d1) d1)
(*.f64 d1 (*.f64 d1 d1))
(* d1 d1)
(*.f64 d1 d1)
d1
(* (* d1 (* (* d1 (* d1 d1)) d1)) d1)
(*.f64 (*.f64 d1 d1) (*.f64 d1 (*.f64 d1 (*.f64 d1 d1))))
(* d1 (* (* d1 (* d1 d1)) d1))
(*.f64 d1 (*.f64 d1 (*.f64 d1 (*.f64 d1 d1))))
d1
(* (* d1 (* d1 d1)) d1)
(*.f64 d1 (*.f64 d1 (*.f64 d1 d1)))
(* d1 (* d1 d1))
(*.f64 d1 (*.f64 d1 d1))
(* d1 d1)
(*.f64 d1 d1)
(* (* d1 (* (* (* (* d1 d1) d1) (* d1 d1)) d1)) d1)
(*.f64 d1 (*.f64 (*.f64 d1 (*.f64 d1 d1)) (*.f64 d1 (*.f64 d1 (*.f64 d1 d1)))))
(* d1 (* (* (* (* d1 d1) d1) (* d1 d1)) d1))
(*.f64 (*.f64 d1 (*.f64 d1 d1)) (*.f64 d1 (*.f64 d1 (*.f64 d1 d1))))
d1
(* (* (* (* d1 d1) d1) (* d1 d1)) d1)
(*.f64 (*.f64 d1 d1) (*.f64 d1 (*.f64 d1 (*.f64 d1 d1))))
(* (* (* d1 d1) d1) (* d1 d1))
(*.f64 d1 (*.f64 d1 (*.f64 d1 (*.f64 d1 d1))))
(* (* d1 d1) d1)
(*.f64 d1 (*.f64 d1 d1))
(* d1 d1)
(*.f64 d1 d1)

localize53.0ms (0%)

Memory
-14.8MiB live, 65.5MiB allocated
Localize:

Found 11 expressions of interest:

NewMetricScoreProgram
accuracy100.0%
(*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 d1 d1) d1) (*.f64 d1 d1)) d1))
accuracy99.9%
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 d1 d1) d1) (*.f64 d1 d1)) d1)) d1)
accuracy99.9%
(*.f64 (*.f64 d1 d1) d1)
accuracy99.9%
(*.f64 (*.f64 (*.f64 d1 d1) d1) (*.f64 d1 d1))
accuracy100.0%
(*.f64 (*.f64 d1 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1)) d1)
accuracy99.9%
(*.f64 d1 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1))
accuracy99.9%
(*.f64 d1 (*.f64 d1 d1))
accuracy99.9%
(*.f64 (*.f64 d1 (*.f64 d1 d1)) d1)
accuracy100.0%
(*.f64 d1 d1)
accuracy99.9%
(*.f64 (*.f64 d1 d1) d1)
accuracy100.0%
(pow.f64 d1 #s(literal 10 binary64))
Samples
33.0ms256×0valid
Compiler

Compiled 110 to 15 computations (86.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 23.0ms
ival-mult: 17.0ms (73.7% of total)
ival-pow: 6.0ms (26% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series3.0ms (0%)

Memory
4.1MiB live, 4.1MiB allocated
Counts
11 → 132
Calls
Call 1
Inputs
#<alt (pow d1 10)>
#<alt (* (* d1 d1) d1)>
#<alt (* d1 d1)>
#<alt (* (* d1 (* (* d1 (* d1 d1)) d1)) d1)>
#<alt (* d1 (* (* d1 (* d1 d1)) d1))>
#<alt (* (* d1 (* d1 d1)) d1)>
#<alt (* d1 (* d1 d1))>
#<alt (* (* d1 (* (* (* (* d1 d1) d1) (* d1 d1)) d1)) d1)>
#<alt (* d1 (* (* (* (* d1 d1) d1) (* d1 d1)) d1))>
#<alt (* (* (* (* d1 d1) d1) (* d1 d1)) d1)>
#<alt (* (* (* d1 d1) d1) (* d1 d1))>
Outputs
#<alt (pow d1 10)>
#<alt (pow d1 10)>
#<alt (pow d1 10)>
#<alt (pow d1 10)>
#<alt (pow d1 10)>
#<alt (pow d1 10)>
#<alt (pow d1 10)>
#<alt (pow d1 10)>
#<alt (pow d1 10)>
#<alt (pow d1 10)>
#<alt (pow d1 10)>
#<alt (pow d1 10)>
#<alt (pow d1 3)>
#<alt (pow d1 3)>
#<alt (pow d1 3)>
#<alt (pow d1 3)>
#<alt (pow d1 3)>
#<alt (pow d1 3)>
#<alt (pow d1 3)>
#<alt (pow d1 3)>
#<alt (pow d1 3)>
#<alt (pow d1 3)>
#<alt (pow d1 3)>
#<alt (pow d1 3)>
#<alt (pow d1 2)>
#<alt (pow d1 2)>
#<alt (pow d1 2)>
#<alt (pow d1 2)>
#<alt (pow d1 2)>
#<alt (pow d1 2)>
#<alt (pow d1 2)>
#<alt (pow d1 2)>
#<alt (pow d1 2)>
#<alt (pow d1 2)>
#<alt (pow d1 2)>
#<alt (pow d1 2)>
#<alt (pow d1 6)>
#<alt (pow d1 6)>
#<alt (pow d1 6)>
#<alt (pow d1 6)>
#<alt (pow d1 6)>
#<alt (pow d1 6)>
#<alt (pow d1 6)>
#<alt (pow d1 6)>
#<alt (pow d1 6)>
#<alt (pow d1 6)>
#<alt (pow d1 6)>
#<alt (pow d1 6)>
#<alt (pow d1 5)>
#<alt (pow d1 5)>
#<alt (pow d1 5)>
#<alt (pow d1 5)>
#<alt (pow d1 5)>
#<alt (pow d1 5)>
#<alt (pow d1 5)>
#<alt (pow d1 5)>
#<alt (pow d1 5)>
#<alt (pow d1 5)>
#<alt (pow d1 5)>
#<alt (pow d1 5)>
#<alt (pow d1 4)>
#<alt (pow d1 4)>
#<alt (pow d1 4)>
#<alt (pow d1 4)>
#<alt (pow d1 4)>
#<alt (pow d1 4)>
#<alt (pow d1 4)>
#<alt (pow d1 4)>
#<alt (pow d1 4)>
#<alt (pow d1 4)>
#<alt (pow d1 4)>
#<alt (pow d1 4)>
#<alt (pow d1 3)>
#<alt (pow d1 3)>
#<alt (pow d1 3)>
#<alt (pow d1 3)>
#<alt (pow d1 3)>
#<alt (pow d1 3)>
#<alt (pow d1 3)>
#<alt (pow d1 3)>
#<alt (pow d1 3)>
#<alt (pow d1 3)>
#<alt (pow d1 3)>
#<alt (pow d1 3)>
#<alt (pow d1 8)>
#<alt (pow d1 8)>
#<alt (pow d1 8)>
#<alt (pow d1 8)>
#<alt (pow d1 8)>
#<alt (pow d1 8)>
#<alt (pow d1 8)>
#<alt (pow d1 8)>
#<alt (pow d1 8)>
#<alt (pow d1 8)>
#<alt (pow d1 8)>
#<alt (pow d1 8)>
#<alt (pow d1 7)>
#<alt (pow d1 7)>
#<alt (pow d1 7)>
#<alt (pow d1 7)>
#<alt (pow d1 7)>
#<alt (pow d1 7)>
#<alt (pow d1 7)>
#<alt (pow d1 7)>
#<alt (pow d1 7)>
#<alt (pow d1 7)>
#<alt (pow d1 7)>
#<alt (pow d1 7)>
#<alt (pow d1 6)>
#<alt (pow d1 6)>
#<alt (pow d1 6)>
#<alt (pow d1 6)>
#<alt (pow d1 6)>
#<alt (pow d1 6)>
#<alt (pow d1 6)>
#<alt (pow d1 6)>
#<alt (pow d1 6)>
#<alt (pow d1 6)>
#<alt (pow d1 6)>
#<alt (pow d1 6)>
#<alt (pow d1 5)>
#<alt (pow d1 5)>
#<alt (pow d1 5)>
#<alt (pow d1 5)>
#<alt (pow d1 5)>
#<alt (pow d1 5)>
#<alt (pow d1 5)>
#<alt (pow d1 5)>
#<alt (pow d1 5)>
#<alt (pow d1 5)>
#<alt (pow d1 5)>
#<alt (pow d1 5)>
Calls

33 calls:

TimeVariablePointExpression
0.0ms
d1
@0
(* (* d1 (* (* d1 (* d1 d1)) d1)) d1)
0.0ms
d1
@inf
(* d1 d1)
0.0ms
d1
@inf
(* (* d1 (* (* d1 (* d1 d1)) d1)) d1)
0.0ms
d1
@0
(* d1 d1)
0.0ms
d1
@0
(* (* (* d1 d1) d1) (* d1 d1))

rewrite70.0ms (0.1%)

Memory
25.5MiB live, 63.8MiB allocated
Algorithm
batch-egg-rewrite
Rules
1 052×pow-lowering-pow.f64
1 052×pow-lowering-pow.f32
810×unpow-prod-down
648×pow-prod-down
546×pow-exp
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01333
13733
28833
325733
4126311
5552511
6554611
7560311
8580211
9661111
0806311
Stop Event
iter limit
node limit
Counts
11 → 22
Calls
Call 1
Inputs
(pow d1 10)
(* (* d1 d1) d1)
(* d1 d1)
(* (* d1 (* (* d1 (* d1 d1)) d1)) d1)
(* d1 (* (* d1 (* d1 d1)) d1))
(* (* d1 (* d1 d1)) d1)
(* d1 (* d1 d1))
(* (* d1 (* (* (* (* d1 d1) d1) (* d1 d1)) d1)) d1)
(* d1 (* (* (* (* d1 d1) d1) (* d1 d1)) d1))
(* (* (* (* d1 d1) d1) (* d1 d1)) d1)
(* (* (* d1 d1) d1) (* d1 d1))
Outputs
#s(literal 1 binary64)
d1
#s(literal 1 binary64)
d1
#s(literal 1 binary64)
d1
#s(literal 1 binary64)
d1
#s(literal 1 binary64)
d1
#s(literal 1 binary64)
d1
#s(literal 1 binary64)
d1
#s(literal 1 binary64)
d1
#s(literal 1 binary64)
d1
#s(literal 1 binary64)
d1
#s(literal 1 binary64)
d1

simplify24.0ms (0%)

Memory
-21.0MiB live, 18.0MiB allocated
Algorithm
egg-herbie
Rules
16×pow-lowering-pow.f64
16×pow-lowering-pow.f32
*-lowering-*.f32
*-lowering-*.f64
cube-mult
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
017396
120396
222396
324396
024396
Stop Event
iter limit
saturated
Counts
132 → 132
Calls
Call 1
Inputs
(pow d1 10)
(pow d1 10)
(pow d1 10)
(pow d1 10)
(pow d1 10)
(pow d1 10)
(pow d1 10)
(pow d1 10)
(pow d1 10)
(pow d1 10)
(pow d1 10)
(pow d1 10)
(pow d1 3)
(pow d1 3)
(pow d1 3)
(pow d1 3)
(pow d1 3)
(pow d1 3)
(pow d1 3)
(pow d1 3)
(pow d1 3)
(pow d1 3)
(pow d1 3)
(pow d1 3)
(pow d1 2)
(pow d1 2)
(pow d1 2)
(pow d1 2)
(pow d1 2)
(pow d1 2)
(pow d1 2)
(pow d1 2)
(pow d1 2)
(pow d1 2)
(pow d1 2)
(pow d1 2)
(pow d1 6)
(pow d1 6)
(pow d1 6)
(pow d1 6)
(pow d1 6)
(pow d1 6)
(pow d1 6)
(pow d1 6)
(pow d1 6)
(pow d1 6)
(pow d1 6)
(pow d1 6)
(pow d1 5)
(pow d1 5)
(pow d1 5)
(pow d1 5)
(pow d1 5)
(pow d1 5)
(pow d1 5)
(pow d1 5)
(pow d1 5)
(pow d1 5)
(pow d1 5)
(pow d1 5)
(pow d1 4)
(pow d1 4)
(pow d1 4)
(pow d1 4)
(pow d1 4)
(pow d1 4)
(pow d1 4)
(pow d1 4)
(pow d1 4)
(pow d1 4)
(pow d1 4)
(pow d1 4)
(pow d1 3)
(pow d1 3)
(pow d1 3)
(pow d1 3)
(pow d1 3)
(pow d1 3)
(pow d1 3)
(pow d1 3)
(pow d1 3)
(pow d1 3)
(pow d1 3)
(pow d1 3)
(pow d1 8)
(pow d1 8)
(pow d1 8)
(pow d1 8)
(pow d1 8)
(pow d1 8)
(pow d1 8)
(pow d1 8)
(pow d1 8)
(pow d1 8)
(pow d1 8)
(pow d1 8)
(pow d1 7)
(pow d1 7)
(pow d1 7)
(pow d1 7)
(pow d1 7)
(pow d1 7)
(pow d1 7)
(pow d1 7)
(pow d1 7)
(pow d1 7)
(pow d1 7)
(pow d1 7)
(pow d1 6)
(pow d1 6)
(pow d1 6)
(pow d1 6)
(pow d1 6)
(pow d1 6)
(pow d1 6)
(pow d1 6)
(pow d1 6)
(pow d1 6)
(pow d1 6)
(pow d1 6)
(pow d1 5)
(pow d1 5)
(pow d1 5)
(pow d1 5)
(pow d1 5)
(pow d1 5)
(pow d1 5)
(pow d1 5)
(pow d1 5)
(pow d1 5)
(pow d1 5)
(pow d1 5)
Outputs
(pow d1 10)
(pow.f64 d1 #s(literal 10 binary64))
(pow d1 10)
(pow.f64 d1 #s(literal 10 binary64))
(pow d1 10)
(pow.f64 d1 #s(literal 10 binary64))
(pow d1 10)
(pow.f64 d1 #s(literal 10 binary64))
(pow d1 10)
(pow.f64 d1 #s(literal 10 binary64))
(pow d1 10)
(pow.f64 d1 #s(literal 10 binary64))
(pow d1 10)
(pow.f64 d1 #s(literal 10 binary64))
(pow d1 10)
(pow.f64 d1 #s(literal 10 binary64))
(pow d1 10)
(pow.f64 d1 #s(literal 10 binary64))
(pow d1 10)
(pow.f64 d1 #s(literal 10 binary64))
(pow d1 10)
(pow.f64 d1 #s(literal 10 binary64))
(pow d1 10)
(pow.f64 d1 #s(literal 10 binary64))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 2)
(*.f64 d1 d1)
(pow d1 2)
(*.f64 d1 d1)
(pow d1 2)
(*.f64 d1 d1)
(pow d1 2)
(*.f64 d1 d1)
(pow d1 2)
(*.f64 d1 d1)
(pow d1 2)
(*.f64 d1 d1)
(pow d1 2)
(*.f64 d1 d1)
(pow d1 2)
(*.f64 d1 d1)
(pow d1 2)
(*.f64 d1 d1)
(pow d1 2)
(*.f64 d1 d1)
(pow d1 2)
(*.f64 d1 d1)
(pow d1 2)
(*.f64 d1 d1)
(pow d1 6)
(pow.f64 d1 #s(literal 6 binary64))
(pow d1 6)
(pow.f64 d1 #s(literal 6 binary64))
(pow d1 6)
(pow.f64 d1 #s(literal 6 binary64))
(pow d1 6)
(pow.f64 d1 #s(literal 6 binary64))
(pow d1 6)
(pow.f64 d1 #s(literal 6 binary64))
(pow d1 6)
(pow.f64 d1 #s(literal 6 binary64))
(pow d1 6)
(pow.f64 d1 #s(literal 6 binary64))
(pow d1 6)
(pow.f64 d1 #s(literal 6 binary64))
(pow d1 6)
(pow.f64 d1 #s(literal 6 binary64))
(pow d1 6)
(pow.f64 d1 #s(literal 6 binary64))
(pow d1 6)
(pow.f64 d1 #s(literal 6 binary64))
(pow d1 6)
(pow.f64 d1 #s(literal 6 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 8)
(pow.f64 d1 #s(literal 8 binary64))
(pow d1 8)
(pow.f64 d1 #s(literal 8 binary64))
(pow d1 8)
(pow.f64 d1 #s(literal 8 binary64))
(pow d1 8)
(pow.f64 d1 #s(literal 8 binary64))
(pow d1 8)
(pow.f64 d1 #s(literal 8 binary64))
(pow d1 8)
(pow.f64 d1 #s(literal 8 binary64))
(pow d1 8)
(pow.f64 d1 #s(literal 8 binary64))
(pow d1 8)
(pow.f64 d1 #s(literal 8 binary64))
(pow d1 8)
(pow.f64 d1 #s(literal 8 binary64))
(pow d1 8)
(pow.f64 d1 #s(literal 8 binary64))
(pow d1 8)
(pow.f64 d1 #s(literal 8 binary64))
(pow d1 8)
(pow.f64 d1 #s(literal 8 binary64))
(pow d1 7)
(pow.f64 d1 #s(literal 7 binary64))
(pow d1 7)
(pow.f64 d1 #s(literal 7 binary64))
(pow d1 7)
(pow.f64 d1 #s(literal 7 binary64))
(pow d1 7)
(pow.f64 d1 #s(literal 7 binary64))
(pow d1 7)
(pow.f64 d1 #s(literal 7 binary64))
(pow d1 7)
(pow.f64 d1 #s(literal 7 binary64))
(pow d1 7)
(pow.f64 d1 #s(literal 7 binary64))
(pow d1 7)
(pow.f64 d1 #s(literal 7 binary64))
(pow d1 7)
(pow.f64 d1 #s(literal 7 binary64))
(pow d1 7)
(pow.f64 d1 #s(literal 7 binary64))
(pow d1 7)
(pow.f64 d1 #s(literal 7 binary64))
(pow d1 7)
(pow.f64 d1 #s(literal 7 binary64))
(pow d1 6)
(pow.f64 d1 #s(literal 6 binary64))
(pow d1 6)
(pow.f64 d1 #s(literal 6 binary64))
(pow d1 6)
(pow.f64 d1 #s(literal 6 binary64))
(pow d1 6)
(pow.f64 d1 #s(literal 6 binary64))
(pow d1 6)
(pow.f64 d1 #s(literal 6 binary64))
(pow d1 6)
(pow.f64 d1 #s(literal 6 binary64))
(pow d1 6)
(pow.f64 d1 #s(literal 6 binary64))
(pow d1 6)
(pow.f64 d1 #s(literal 6 binary64))
(pow d1 6)
(pow.f64 d1 #s(literal 6 binary64))
(pow d1 6)
(pow.f64 d1 #s(literal 6 binary64))
(pow d1 6)
(pow.f64 d1 #s(literal 6 binary64))
(pow d1 6)
(pow.f64 d1 #s(literal 6 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))

eval17.0ms (0%)

Memory
22.4MiB live, 22.4MiB allocated
Compiler

Compiled 1 595 to 65 computations (95.9% saved)

prune23.0ms (0%)

Memory
-43.2MiB live, 10.0MiB allocated
Pruning

10 alts after pruning (4 fresh and 6 done)

PrunedKeptTotal
New2082210
Fresh123
Picked055
Done011
Total20910219
Accuracy
100.0%
Counts
219 → 10
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(pow.f64 d1 #s(literal 10 binary64))
99.9%
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1)
89.8%
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 d1 d1) d1) (*.f64 d1 d1)) d1)) d1)
88.6%
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 d1 d1) d1) d1) d1)) d1)
84.8%
(*.f64 (*.f64 d1 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1)) d1)
81.6%
(*.f64 (*.f64 d1 (*.f64 (*.f64 d1 d1) d1)) d1)
75.9%
(*.f64 (*.f64 d1 (*.f64 d1 d1)) d1)
67.4%
(*.f64 (*.f64 d1 d1) d1)
54.4%
(*.f64 d1 d1)
5.6%
d1
Compiler

Compiled 96 to 47 computations (51% saved)

simplify5.0ms (0%)

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

Found 12 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 (*.f64 (*.f64 d1 d1) d1) d1)
cost-diff0
(*.f64 (*.f64 (*.f64 (*.f64 d1 d1) d1) d1) d1)
cost-diff0
(*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 d1 d1) d1) d1) d1))
cost-diff0
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 d1 d1) d1) d1) d1)) d1)
cost-diff0
(*.f64 d1 d1)
cost-diff0
(*.f64 (*.f64 d1 d1) d1)
cost-diff0
(*.f64 d1 (*.f64 (*.f64 d1 d1) d1))
cost-diff0
(*.f64 (*.f64 d1 (*.f64 (*.f64 d1 d1) d1)) d1)
cost-diff0
(*.f64 d1 d1)
cost-diff0
(*.f64 d1 (*.f64 d1 d1))
cost-diff0
(*.f64 (*.f64 d1 (*.f64 d1 d1)) d1)
cost-diff0
(*.f64 d1 d1)
Rules
42×*-lowering-*.f32
42×*-lowering-*.f64
18×associate-*r*
12×pow-lowering-pow.f64
12×pow-lowering-pow.f32
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01174
12060
23048
34246
44646
04646
Stop Event
iter limit
saturated
Calls
Call 1
Inputs
(* d1 d1)
d1
(* (* d1 (* d1 d1)) d1)
(* d1 (* d1 d1))
d1
(* d1 d1)
(* (* d1 (* (* d1 d1) d1)) d1)
(* d1 (* (* d1 d1) d1))
d1
(* (* d1 d1) d1)
(* d1 d1)
(* (* d1 (* (* (* (* d1 d1) d1) d1) d1)) d1)
(* d1 (* (* (* (* d1 d1) d1) d1) d1))
d1
(* (* (* (* d1 d1) d1) d1) d1)
(* (* (* d1 d1) d1) d1)
(* (* d1 d1) d1)
(* d1 d1)
Outputs
(* d1 d1)
(*.f64 d1 d1)
d1
(* (* d1 (* d1 d1)) d1)
(*.f64 d1 (*.f64 d1 (*.f64 d1 d1)))
(* d1 (* d1 d1))
(*.f64 d1 (*.f64 d1 d1))
d1
(* d1 d1)
(*.f64 d1 d1)
(* (* d1 (* (* d1 d1) d1)) d1)
(*.f64 (*.f64 d1 d1) (*.f64 d1 (*.f64 d1 d1)))
(* d1 (* (* d1 d1) d1))
(*.f64 d1 (*.f64 d1 (*.f64 d1 d1)))
d1
(* (* d1 d1) d1)
(*.f64 d1 (*.f64 d1 d1))
(* d1 d1)
(*.f64 d1 d1)
(* (* d1 (* (* (* (* d1 d1) d1) d1) d1)) d1)
(*.f64 (*.f64 d1 d1) (*.f64 (*.f64 d1 d1) (*.f64 d1 (*.f64 d1 d1))))
(* d1 (* (* (* (* d1 d1) d1) d1) d1))
(*.f64 d1 (*.f64 (*.f64 d1 d1) (*.f64 d1 (*.f64 d1 d1))))
d1
(* (* (* (* d1 d1) d1) d1) d1)
(*.f64 (*.f64 d1 d1) (*.f64 d1 (*.f64 d1 d1)))
(* (* (* d1 d1) d1) d1)
(*.f64 d1 (*.f64 d1 (*.f64 d1 d1)))
(* (* d1 d1) d1)
(*.f64 d1 (*.f64 d1 d1))
(* d1 d1)
(*.f64 d1 d1)

localize41.0ms (0%)

Memory
22.9MiB live, 61.0MiB allocated
Localize:

Found 12 expressions of interest:

NewMetricScoreProgram
accuracy100.0%
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 d1 d1) d1) d1) d1)) d1)
accuracy99.9%
(*.f64 (*.f64 (*.f64 (*.f64 d1 d1) d1) d1) d1)
accuracy99.9%
(*.f64 (*.f64 d1 d1) d1)
accuracy99.9%
(*.f64 (*.f64 (*.f64 d1 d1) d1) d1)
accuracy100.0%
(*.f64 d1 d1)
accuracy99.9%
(*.f64 (*.f64 d1 (*.f64 (*.f64 d1 d1) d1)) d1)
accuracy99.9%
(*.f64 (*.f64 d1 d1) d1)
accuracy99.9%
(*.f64 d1 (*.f64 (*.f64 d1 d1) d1))
accuracy100.0%
(*.f64 d1 d1)
accuracy99.9%
(*.f64 d1 (*.f64 d1 d1))
accuracy99.9%
(*.f64 (*.f64 d1 (*.f64 d1 d1)) d1)
accuracy100.0%
(*.f64 d1 d1)
Samples
24.0ms256×0valid
Compiler

Compiled 96 to 13 computations (86.5% saved)

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

series2.0ms (0%)

Memory
2.9MiB live, 2.9MiB allocated
Counts
10 → 120
Calls
Call 1
Inputs
#<alt (* d1 d1)>
#<alt (* (* d1 (* d1 d1)) d1)>
#<alt (* d1 (* d1 d1))>
#<alt (* (* d1 (* (* d1 d1) d1)) d1)>
#<alt (* d1 (* (* d1 d1) d1))>
#<alt (* (* d1 d1) d1)>
#<alt (* (* d1 (* (* (* (* d1 d1) d1) d1) d1)) d1)>
#<alt (* d1 (* (* (* (* d1 d1) d1) d1) d1))>
#<alt (* (* (* (* d1 d1) d1) d1) d1)>
#<alt (* (* (* d1 d1) d1) d1)>
Outputs
#<alt (pow d1 2)>
#<alt (pow d1 2)>
#<alt (pow d1 2)>
#<alt (pow d1 2)>
#<alt (pow d1 2)>
#<alt (pow d1 2)>
#<alt (pow d1 2)>
#<alt (pow d1 2)>
#<alt (pow d1 2)>
#<alt (pow d1 2)>
#<alt (pow d1 2)>
#<alt (pow d1 2)>
#<alt (pow d1 4)>
#<alt (pow d1 4)>
#<alt (pow d1 4)>
#<alt (pow d1 4)>
#<alt (pow d1 4)>
#<alt (pow d1 4)>
#<alt (pow d1 4)>
#<alt (pow d1 4)>
#<alt (pow d1 4)>
#<alt (pow d1 4)>
#<alt (pow d1 4)>
#<alt (pow d1 4)>
#<alt (pow d1 3)>
#<alt (pow d1 3)>
#<alt (pow d1 3)>
#<alt (pow d1 3)>
#<alt (pow d1 3)>
#<alt (pow d1 3)>
#<alt (pow d1 3)>
#<alt (pow d1 3)>
#<alt (pow d1 3)>
#<alt (pow d1 3)>
#<alt (pow d1 3)>
#<alt (pow d1 3)>
#<alt (pow d1 5)>
#<alt (pow d1 5)>
#<alt (pow d1 5)>
#<alt (pow d1 5)>
#<alt (pow d1 5)>
#<alt (pow d1 5)>
#<alt (pow d1 5)>
#<alt (pow d1 5)>
#<alt (pow d1 5)>
#<alt (pow d1 5)>
#<alt (pow d1 5)>
#<alt (pow d1 5)>
#<alt (pow d1 4)>
#<alt (pow d1 4)>
#<alt (pow d1 4)>
#<alt (pow d1 4)>
#<alt (pow d1 4)>
#<alt (pow d1 4)>
#<alt (pow d1 4)>
#<alt (pow d1 4)>
#<alt (pow d1 4)>
#<alt (pow d1 4)>
#<alt (pow d1 4)>
#<alt (pow d1 4)>
#<alt (pow d1 3)>
#<alt (pow d1 3)>
#<alt (pow d1 3)>
#<alt (pow d1 3)>
#<alt (pow d1 3)>
#<alt (pow d1 3)>
#<alt (pow d1 3)>
#<alt (pow d1 3)>
#<alt (pow d1 3)>
#<alt (pow d1 3)>
#<alt (pow d1 3)>
#<alt (pow d1 3)>
#<alt (pow d1 7)>
#<alt (pow d1 7)>
#<alt (pow d1 7)>
#<alt (pow d1 7)>
#<alt (pow d1 7)>
#<alt (pow d1 7)>
#<alt (pow d1 7)>
#<alt (pow d1 7)>
#<alt (pow d1 7)>
#<alt (pow d1 7)>
#<alt (pow d1 7)>
#<alt (pow d1 7)>
#<alt (pow d1 6)>
#<alt (pow d1 6)>
#<alt (pow d1 6)>
#<alt (pow d1 6)>
#<alt (pow d1 6)>
#<alt (pow d1 6)>
#<alt (pow d1 6)>
#<alt (pow d1 6)>
#<alt (pow d1 6)>
#<alt (pow d1 6)>
#<alt (pow d1 6)>
#<alt (pow d1 6)>
#<alt (pow d1 5)>
#<alt (pow d1 5)>
#<alt (pow d1 5)>
#<alt (pow d1 5)>
#<alt (pow d1 5)>
#<alt (pow d1 5)>
#<alt (pow d1 5)>
#<alt (pow d1 5)>
#<alt (pow d1 5)>
#<alt (pow d1 5)>
#<alt (pow d1 5)>
#<alt (pow d1 5)>
#<alt (pow d1 4)>
#<alt (pow d1 4)>
#<alt (pow d1 4)>
#<alt (pow d1 4)>
#<alt (pow d1 4)>
#<alt (pow d1 4)>
#<alt (pow d1 4)>
#<alt (pow d1 4)>
#<alt (pow d1 4)>
#<alt (pow d1 4)>
#<alt (pow d1 4)>
#<alt (pow d1 4)>
Calls

30 calls:

TimeVariablePointExpression
0.0ms
d1
@inf
(* (* d1 (* (* (* (* d1 d1) d1) d1) d1)) d1)
0.0ms
d1
@inf
(* (* d1 (* (* d1 d1) d1)) d1)
0.0ms
d1
@-inf
(* (* d1 (* (* (* (* d1 d1) d1) d1) d1)) d1)
0.0ms
d1
@0
(* d1 d1)
0.0ms
d1
@0
(* (* d1 (* (* d1 d1) d1)) d1)

rewrite54.0ms (0%)

Memory
-17.8MiB live, 57.3MiB allocated
Algorithm
batch-egg-rewrite
Rules
1 752×frac-sub
796×prod-exp
648×pow-exp
594×pow-pow
468×associate-*r*
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
01130
12230
25130
313330
459030
5303710
01458310
Stop Event
iter limit
node limit
Counts
10 → 20
Calls
Call 1
Inputs
(* d1 d1)
(* (* d1 (* d1 d1)) d1)
(* d1 (* d1 d1))
(* (* d1 (* (* d1 d1) d1)) d1)
(* d1 (* (* d1 d1) d1))
(* (* d1 d1) d1)
(* (* d1 (* (* (* (* d1 d1) d1) d1) d1)) d1)
(* d1 (* (* (* (* d1 d1) d1) d1) d1))
(* (* (* (* d1 d1) d1) d1) d1)
(* (* (* d1 d1) d1) d1)
Outputs
#s(literal 1 binary64)
d1
#s(literal 1 binary64)
d1
#s(literal 1 binary64)
d1
#s(literal 1 binary64)
d1
#s(literal 1 binary64)
d1
#s(literal 1 binary64)
d1
#s(literal 1 binary64)
d1
#s(literal 1 binary64)
d1
#s(literal 1 binary64)
d1
#s(literal 1 binary64)
d1

simplify17.0ms (0%)

Memory
-16.7MiB live, 26.9MiB allocated
Algorithm
egg-herbie
Rules
12×pow-lowering-pow.f64
12×pow-lowering-pow.f32
*-lowering-*.f32
*-lowering-*.f64
cube-mult
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
013360
116360
218360
320360
020360
Stop Event
iter limit
saturated
Counts
120 → 120
Calls
Call 1
Inputs
(pow d1 2)
(pow d1 2)
(pow d1 2)
(pow d1 2)
(pow d1 2)
(pow d1 2)
(pow d1 2)
(pow d1 2)
(pow d1 2)
(pow d1 2)
(pow d1 2)
(pow d1 2)
(pow d1 4)
(pow d1 4)
(pow d1 4)
(pow d1 4)
(pow d1 4)
(pow d1 4)
(pow d1 4)
(pow d1 4)
(pow d1 4)
(pow d1 4)
(pow d1 4)
(pow d1 4)
(pow d1 3)
(pow d1 3)
(pow d1 3)
(pow d1 3)
(pow d1 3)
(pow d1 3)
(pow d1 3)
(pow d1 3)
(pow d1 3)
(pow d1 3)
(pow d1 3)
(pow d1 3)
(pow d1 5)
(pow d1 5)
(pow d1 5)
(pow d1 5)
(pow d1 5)
(pow d1 5)
(pow d1 5)
(pow d1 5)
(pow d1 5)
(pow d1 5)
(pow d1 5)
(pow d1 5)
(pow d1 4)
(pow d1 4)
(pow d1 4)
(pow d1 4)
(pow d1 4)
(pow d1 4)
(pow d1 4)
(pow d1 4)
(pow d1 4)
(pow d1 4)
(pow d1 4)
(pow d1 4)
(pow d1 3)
(pow d1 3)
(pow d1 3)
(pow d1 3)
(pow d1 3)
(pow d1 3)
(pow d1 3)
(pow d1 3)
(pow d1 3)
(pow d1 3)
(pow d1 3)
(pow d1 3)
(pow d1 7)
(pow d1 7)
(pow d1 7)
(pow d1 7)
(pow d1 7)
(pow d1 7)
(pow d1 7)
(pow d1 7)
(pow d1 7)
(pow d1 7)
(pow d1 7)
(pow d1 7)
(pow d1 6)
(pow d1 6)
(pow d1 6)
(pow d1 6)
(pow d1 6)
(pow d1 6)
(pow d1 6)
(pow d1 6)
(pow d1 6)
(pow d1 6)
(pow d1 6)
(pow d1 6)
(pow d1 5)
(pow d1 5)
(pow d1 5)
(pow d1 5)
(pow d1 5)
(pow d1 5)
(pow d1 5)
(pow d1 5)
(pow d1 5)
(pow d1 5)
(pow d1 5)
(pow d1 5)
(pow d1 4)
(pow d1 4)
(pow d1 4)
(pow d1 4)
(pow d1 4)
(pow d1 4)
(pow d1 4)
(pow d1 4)
(pow d1 4)
(pow d1 4)
(pow d1 4)
(pow d1 4)
Outputs
(pow d1 2)
(*.f64 d1 d1)
(pow d1 2)
(*.f64 d1 d1)
(pow d1 2)
(*.f64 d1 d1)
(pow d1 2)
(*.f64 d1 d1)
(pow d1 2)
(*.f64 d1 d1)
(pow d1 2)
(*.f64 d1 d1)
(pow d1 2)
(*.f64 d1 d1)
(pow d1 2)
(*.f64 d1 d1)
(pow d1 2)
(*.f64 d1 d1)
(pow d1 2)
(*.f64 d1 d1)
(pow d1 2)
(*.f64 d1 d1)
(pow d1 2)
(*.f64 d1 d1)
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 3)
(*.f64 d1 (*.f64 d1 d1))
(pow d1 7)
(pow.f64 d1 #s(literal 7 binary64))
(pow d1 7)
(pow.f64 d1 #s(literal 7 binary64))
(pow d1 7)
(pow.f64 d1 #s(literal 7 binary64))
(pow d1 7)
(pow.f64 d1 #s(literal 7 binary64))
(pow d1 7)
(pow.f64 d1 #s(literal 7 binary64))
(pow d1 7)
(pow.f64 d1 #s(literal 7 binary64))
(pow d1 7)
(pow.f64 d1 #s(literal 7 binary64))
(pow d1 7)
(pow.f64 d1 #s(literal 7 binary64))
(pow d1 7)
(pow.f64 d1 #s(literal 7 binary64))
(pow d1 7)
(pow.f64 d1 #s(literal 7 binary64))
(pow d1 7)
(pow.f64 d1 #s(literal 7 binary64))
(pow d1 7)
(pow.f64 d1 #s(literal 7 binary64))
(pow d1 6)
(pow.f64 d1 #s(literal 6 binary64))
(pow d1 6)
(pow.f64 d1 #s(literal 6 binary64))
(pow d1 6)
(pow.f64 d1 #s(literal 6 binary64))
(pow d1 6)
(pow.f64 d1 #s(literal 6 binary64))
(pow d1 6)
(pow.f64 d1 #s(literal 6 binary64))
(pow d1 6)
(pow.f64 d1 #s(literal 6 binary64))
(pow d1 6)
(pow.f64 d1 #s(literal 6 binary64))
(pow d1 6)
(pow.f64 d1 #s(literal 6 binary64))
(pow d1 6)
(pow.f64 d1 #s(literal 6 binary64))
(pow d1 6)
(pow.f64 d1 #s(literal 6 binary64))
(pow d1 6)
(pow.f64 d1 #s(literal 6 binary64))
(pow d1 6)
(pow.f64 d1 #s(literal 6 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 5)
(pow.f64 d1 #s(literal 5 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))
(pow d1 4)
(pow.f64 d1 #s(literal 4 binary64))

eval16.0ms (0%)

Memory
26.8MiB live, 26.8MiB allocated
Compiler

Compiled 1 277 to 44 computations (96.6% saved)

prune8.0ms (0%)

Memory
-23.8MiB live, 15.7MiB allocated
Pruning

10 alts after pruning (0 fresh and 10 done)

PrunedKeptTotal
New1960196
Fresh000
Picked044
Done066
Total19610206
Accuracy
100.0%
Counts
206 → 10
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(pow.f64 d1 #s(literal 10 binary64))
99.9%
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1)
89.8%
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 d1 d1) d1) (*.f64 d1 d1)) d1)) d1)
88.6%
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 d1 d1) d1) d1) d1)) d1)
84.8%
(*.f64 (*.f64 d1 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1)) d1)
81.6%
(*.f64 (*.f64 d1 (*.f64 (*.f64 d1 d1) d1)) d1)
75.9%
(*.f64 (*.f64 d1 (*.f64 d1 d1)) d1)
67.4%
(*.f64 (*.f64 d1 d1) d1)
54.4%
(*.f64 d1 d1)
5.6%
d1
Compiler

Compiled 196 to 75 computations (61.7% saved)

regimes8.0ms (0%)

Memory
14.8MiB live, 14.8MiB allocated
Counts
11 → 1
Calls
Call 1
Inputs
d1
(*.f64 d1 d1)
(*.f64 (*.f64 d1 d1) d1)
(*.f64 (*.f64 d1 (*.f64 d1 d1)) d1)
(*.f64 (*.f64 d1 (*.f64 (*.f64 d1 d1) d1)) d1)
(*.f64 (*.f64 d1 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1)) d1)
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 d1 d1) (*.f64 d1 d1)) d1)) d1)
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 d1 d1) d1) d1) d1)) d1)
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 d1 d1) d1) (*.f64 d1 d1)) d1)) d1)
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1)
(pow.f64 d1 #s(literal 10 binary64))
Outputs
(pow.f64 d1 #s(literal 10 binary64))
Calls

2 calls:

4.0ms
d1
3.0ms
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1)
Results
AccuracySegmentsBranch
100.0%1d1
100.0%1(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1)
Compiler

Compiled 22 to 10 computations (54.5% saved)

regimes7.0ms (0%)

Memory
12.4MiB live, 12.4MiB allocated
Counts
10 → 1
Calls
Call 1
Inputs
d1
(*.f64 d1 d1)
(*.f64 (*.f64 d1 d1) d1)
(*.f64 (*.f64 d1 (*.f64 d1 d1)) d1)
(*.f64 (*.f64 d1 (*.f64 (*.f64 d1 d1) d1)) d1)
(*.f64 (*.f64 d1 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1)) d1)
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 d1 d1) (*.f64 d1 d1)) d1)) d1)
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 d1 d1) d1) d1) d1)) d1)
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 d1 d1) d1) (*.f64 d1 d1)) d1)) d1)
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1)
Outputs
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1)
Calls

2 calls:

4.0ms
d1
3.0ms
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1)
Results
AccuracySegmentsBranch
99.9%1d1
99.9%1(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1)
Compiler

Compiled 22 to 10 computations (54.5% saved)

regimes9.0ms (0%)

Memory
-26.0MiB live, 11.6MiB allocated
Counts
9 → 1
Calls
Call 1
Inputs
d1
(*.f64 d1 d1)
(*.f64 (*.f64 d1 d1) d1)
(*.f64 (*.f64 d1 (*.f64 d1 d1)) d1)
(*.f64 (*.f64 d1 (*.f64 (*.f64 d1 d1) d1)) d1)
(*.f64 (*.f64 d1 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1)) d1)
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 d1 d1) (*.f64 d1 d1)) d1)) d1)
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 d1 d1) d1) d1) d1)) d1)
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 d1 d1) d1) (*.f64 d1 d1)) d1)) d1)
Outputs
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 d1 d1) d1) (*.f64 d1 d1)) d1)) d1)
Calls

2 calls:

5.0ms
d1
3.0ms
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1)
Results
AccuracySegmentsBranch
89.8%1d1
89.8%1(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1)
Compiler

Compiled 22 to 10 computations (54.5% saved)

regimes6.0ms (0%)

Memory
10.8MiB live, 10.8MiB allocated
Counts
8 → 1
Calls
Call 1
Inputs
d1
(*.f64 d1 d1)
(*.f64 (*.f64 d1 d1) d1)
(*.f64 (*.f64 d1 (*.f64 d1 d1)) d1)
(*.f64 (*.f64 d1 (*.f64 (*.f64 d1 d1) d1)) d1)
(*.f64 (*.f64 d1 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1)) d1)
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 d1 d1) (*.f64 d1 d1)) d1)) d1)
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 d1 d1) d1) d1) d1)) d1)
Outputs
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 d1 d1) (*.f64 d1 d1)) d1)) d1)
Calls

2 calls:

3.0ms
d1
3.0ms
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1)
Results
AccuracySegmentsBranch
88.6%1d1
88.6%1(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1)
Compiler

Compiled 22 to 10 computations (54.5% saved)

regimes6.0ms (0%)

Memory
9.9MiB live, 9.9MiB allocated
Counts
6 → 1
Calls
Call 1
Inputs
d1
(*.f64 d1 d1)
(*.f64 (*.f64 d1 d1) d1)
(*.f64 (*.f64 d1 (*.f64 d1 d1)) d1)
(*.f64 (*.f64 d1 (*.f64 (*.f64 d1 d1) d1)) d1)
(*.f64 (*.f64 d1 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1)) d1)
Outputs
(*.f64 (*.f64 d1 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1)) d1)
Calls

2 calls:

3.0ms
d1
2.0ms
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1)
Results
AccuracySegmentsBranch
84.8%1(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1)
84.8%1d1
Compiler

Compiled 22 to 10 computations (54.5% saved)

regimes5.0ms (0%)

Memory
8.5MiB live, 8.5MiB allocated
Counts
5 → 1
Calls
Call 1
Inputs
d1
(*.f64 d1 d1)
(*.f64 (*.f64 d1 d1) d1)
(*.f64 (*.f64 d1 (*.f64 d1 d1)) d1)
(*.f64 (*.f64 d1 (*.f64 (*.f64 d1 d1) d1)) d1)
Outputs
(*.f64 (*.f64 d1 (*.f64 (*.f64 d1 d1) d1)) d1)
Calls

2 calls:

3.0ms
d1
2.0ms
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1)
Results
AccuracySegmentsBranch
81.6%1(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1)
81.6%1d1
Compiler

Compiled 22 to 10 computations (54.5% saved)

regimes5.0ms (0%)

Memory
-31.5MiB live, 7.8MiB allocated
Counts
4 → 1
Calls
Call 1
Inputs
d1
(*.f64 d1 d1)
(*.f64 (*.f64 d1 d1) d1)
(*.f64 (*.f64 d1 (*.f64 d1 d1)) d1)
Outputs
(*.f64 (*.f64 d1 (*.f64 d1 d1)) d1)
Calls

2 calls:

3.0ms
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1)
2.0ms
d1
Results
AccuracySegmentsBranch
75.9%1(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1)
75.9%1d1
Compiler

Compiled 22 to 10 computations (54.5% saved)

regimes4.0ms (0%)

Memory
7.2MiB live, 7.2MiB allocated
Counts
3 → 1
Calls
Call 1
Inputs
d1
(*.f64 d1 d1)
(*.f64 (*.f64 d1 d1) d1)
Outputs
(*.f64 (*.f64 d1 d1) d1)
Calls

2 calls:

2.0ms
d1
2.0ms
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1)
Results
AccuracySegmentsBranch
67.4%1d1
67.4%1(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1)
Compiler

Compiled 22 to 10 computations (54.5% saved)

regimes3.0ms (0%)

Memory
6.5MiB live, 6.5MiB allocated
Counts
2 → 1
Calls
Call 1
Inputs
d1
(*.f64 d1 d1)
Outputs
(*.f64 d1 d1)
Calls

2 calls:

2.0ms
d1
1.0ms
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1)
Results
AccuracySegmentsBranch
54.4%1d1
54.4%1(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1)
Compiler

Compiled 22 to 10 computations (54.5% saved)

regimes3.0ms (0%)

Memory
5.6MiB live, 5.6MiB allocated
Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

Counts
1 → 1
Calls
Call 1
Inputs
d1
Outputs
d1
Calls

2 calls:

1.0ms
d1
1.0ms
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1)
Results
AccuracySegmentsBranch
5.6%1d1
5.6%1(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1)
Compiler

Compiled 22 to 10 computations (54.5% saved)

simplify8.0ms (0%)

Memory
12.9MiB live, 12.9MiB allocated
Algorithm
egg-herbie
Rules
32×*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02486
13986
Stop Event
saturated
Calls
Call 1
Inputs
(pow.f64 d1 #s(literal 10 binary64))
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1)
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 d1 d1) d1) (*.f64 d1 d1)) d1)) d1)
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 d1 d1) (*.f64 d1 d1)) d1)) d1)
(*.f64 (*.f64 d1 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1)) d1)
(*.f64 (*.f64 d1 (*.f64 (*.f64 d1 d1) d1)) d1)
(*.f64 (*.f64 d1 (*.f64 d1 d1)) d1)
(*.f64 (*.f64 d1 d1) d1)
(*.f64 d1 d1)
d1
Outputs
(pow.f64 d1 #s(literal 10 binary64))
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1)
(*.f64 d1 (*.f64 d1 (*.f64 d1 (*.f64 (*.f64 d1 d1) (*.f64 d1 (*.f64 d1 (*.f64 d1 (*.f64 d1 d1))))))))
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 d1 d1) d1) (*.f64 d1 d1)) d1)) d1)
(*.f64 d1 (*.f64 d1 (*.f64 d1 (*.f64 (*.f64 d1 d1) (*.f64 d1 (*.f64 d1 d1))))))
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 d1 d1) (*.f64 d1 d1)) d1)) d1)
(*.f64 d1 (*.f64 d1 (*.f64 d1 (*.f64 (*.f64 d1 d1) (*.f64 d1 d1)))))
(*.f64 (*.f64 d1 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1)) d1)
(*.f64 d1 (*.f64 d1 (*.f64 d1 (*.f64 d1 (*.f64 d1 d1)))))
(*.f64 (*.f64 d1 (*.f64 (*.f64 d1 d1) d1)) d1)
(*.f64 d1 (*.f64 d1 (*.f64 d1 (*.f64 d1 d1))))
(*.f64 (*.f64 d1 (*.f64 d1 d1)) d1)
(*.f64 d1 (*.f64 d1 (*.f64 d1 d1)))
(*.f64 (*.f64 d1 d1) d1)
(*.f64 d1 (*.f64 d1 d1))
(*.f64 d1 d1)
d1

soundness1.9min (98.6%)

Memory
-9.8MiB live, 388.9MiB allocated
Rules
1 052×pow-lowering-pow.f64
1 052×pow-lowering-pow.f32
1 048×pow-exp
810×unpow-prod-down
648×pow-prod-down
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
01333
13733
28833
325733
4126311
5552511
6554611
7560311
8580211
9661111
0806311
09105
12763
27335
318421
497521
530067
0104397
015252
118252
018252
Stop Event
done
iter limit
saturated
iter limit
node limit
iter limit
node limit
Compiler

Compiled 91 to 23 computations (74.7% saved)

preprocess81.0ms (0.1%)

Memory
-0.2MiB live, 116.5MiB allocated
Remove

(abs d1)

Compiler

Compiled 286 to 112 computations (60.8% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...