math.cube on real

Details

Time bar (total: 1.0s)

analyze0.0ms (0%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%100%0%0%0%0%0
100%100%0%0%0%0%0%1
Compiler

Compiled 7 to 4 computations (42.9% saved)

sample525.0ms (52.2%)

Results
353.0ms5566×body256valid
161.0ms2690×body256infinite
Bogosity

preprocess274.0ms (27.3%)

Algorithm
egg-herbie
Rules
3406×sqr-pow
1566×cube-prod
1330×pow-sqr
852×unpow3
736×cube-mult
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0513
167
287
3137
4187
5277
6487
71327
84957
911557
1012427
1113757
1215337
1317667
1420777
1524847
1629657
1735327
1842127
1944837
2047237
2149037
2250337
2351037
2460177
2569847
2673687
2776727
2878807
2979007
3079007
011
Stop Event
saturated
node limit
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.9%
(*.f64 (*.f64 x x) x)
99.9%
(*.f64 (*.f64 x x) x)
Calls
Call 1
Inputs
0
Outputs
0
Call 2
Inputs
(*.f64 (*.f64 x x) x)
Outputs
(*.f64 (*.f64 x x) x)
(*.f64 x (*.f64 x x))
(pow.f64 x 3)
Compiler

Compiled 19 to 10 computations (47.4% saved)

localize16.0ms (1.6%)

Local Accuracy

Found 1 expressions with local accuracy:

NewAccuracyProgram
99.9%
(*.f64 (*.f64 x x) x)
Compiler

Compiled 11 to 4 computations (63.6% saved)

series1.0ms (0.1%)

Counts
1 → 12
Calls

3 calls:

TimeVariablePointExpression
0.0ms
x
@-inf
(*.f64 (*.f64 x x) x)
0.0ms
x
@0
(*.f64 (*.f64 x x) x)
0.0ms
x
@inf
(*.f64 (*.f64 x x) x)

rewrite46.0ms (4.6%)

Algorithm
batch-egg-rewrite
Rules
820×pow1
788×add-sqr-sqrt
770×*-un-lft-identity
760×add-exp-log
760×log1p-expm1-u
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
057
11007
211337
Stop Event
node limit
Counts
1 → 20
Calls
Call 1
Inputs
(*.f64 (*.f64 x x) x)
Outputs
(+.f64 0 (pow.f64 x 3))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 x 3)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 x 3)))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (pow.f64 x 3))) (cbrt.f64 (exp.f64 (pow.f64 x 3))))) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 x 3)))))
(-.f64 (+.f64 1 (pow.f64 x 3)) 1)
(pow.f64 x 3)
(pow.f64 (*.f64 x x) 3/2)
(pow.f64 (pow.f64 x 3) 1)
(pow.f64 (cbrt.f64 x) 9)
(pow.f64 (pow.f64 x 9) 1/3)
(pow.f64 (pow.f64 x 6) 1/2)
(pow.f64 (sqrt.f64 x) 6)
(pow.f64 (pow.f64 x 3/2) 2)
(sqrt.f64 (pow.f64 x 6))
(log.f64 (exp.f64 (pow.f64 x 3)))
(cbrt.f64 (pow.f64 x 9))
(expm1.f64 (log1p.f64 (pow.f64 x 3)))
(exp.f64 (*.f64 (log.f64 x) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 x 9)) 1/3))
(exp.f64 (*.f64 (*.f64 3/2 (log.f64 x)) 2))
(log1p.f64 (expm1.f64 (pow.f64 x 3)))

simplify65.0ms (6.4%)

Algorithm
egg-herbie
Rules
1268×unswap-sqr
908×fma-def
760×log-prod
472×exp-prod
444×fma-neg
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
055284
1114270
2268246
3993246
44597246
57758246
Stop Event
node limit
Counts
32 → 22
Calls
Call 1
Inputs
(pow.f64 x 3)
(pow.f64 x 3)
(pow.f64 x 3)
(pow.f64 x 3)
(pow.f64 x 3)
(pow.f64 x 3)
(pow.f64 x 3)
(pow.f64 x 3)
(pow.f64 x 3)
(pow.f64 x 3)
(pow.f64 x 3)
(pow.f64 x 3)
(+.f64 0 (pow.f64 x 3))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 x 3)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 x 3)))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (pow.f64 x 3))) (cbrt.f64 (exp.f64 (pow.f64 x 3))))) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 x 3)))))
(-.f64 (+.f64 1 (pow.f64 x 3)) 1)
(pow.f64 x 3)
(pow.f64 (*.f64 x x) 3/2)
(pow.f64 (pow.f64 x 3) 1)
(pow.f64 (cbrt.f64 x) 9)
(pow.f64 (pow.f64 x 9) 1/3)
(pow.f64 (pow.f64 x 6) 1/2)
(pow.f64 (sqrt.f64 x) 6)
(pow.f64 (pow.f64 x 3/2) 2)
(sqrt.f64 (pow.f64 x 6))
(log.f64 (exp.f64 (pow.f64 x 3)))
(cbrt.f64 (pow.f64 x 9))
(expm1.f64 (log1p.f64 (pow.f64 x 3)))
(exp.f64 (*.f64 (log.f64 x) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 x 9)) 1/3))
(exp.f64 (*.f64 (*.f64 3/2 (log.f64 x)) 2))
(log1p.f64 (expm1.f64 (pow.f64 x 3)))
Outputs
(pow.f64 x 3)
(pow.f64 x 3)
(pow.f64 x 3)
(pow.f64 x 3)
(pow.f64 x 3)
(pow.f64 x 3)
(pow.f64 x 3)
(pow.f64 x 3)
(pow.f64 x 3)
(pow.f64 x 3)
(pow.f64 x 3)
(pow.f64 x 3)
(+.f64 0 (pow.f64 x 3))
(pow.f64 x 3)
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 x 3)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 x 3)))))
(pow.f64 x 3)
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (pow.f64 x 3))) (cbrt.f64 (exp.f64 (pow.f64 x 3))))) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 x 3)))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (exp.f64 (pow.f64 x 3))))) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 x 3)))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (pow.f64 x 3)))))
(-.f64 (+.f64 1 (pow.f64 x 3)) 1)
(pow.f64 x 3)
(pow.f64 x 3)
(pow.f64 (*.f64 x x) 3/2)
(pow.f64 x 3)
(pow.f64 (pow.f64 x 3) 1)
(pow.f64 x 3)
(pow.f64 (cbrt.f64 x) 9)
(pow.f64 (pow.f64 x 9) 1/3)
(pow.f64 x 3)
(pow.f64 (pow.f64 x 6) 1/2)
(pow.f64 x 3)
(pow.f64 (sqrt.f64 x) 6)
(pow.f64 x 3)
(pow.f64 (pow.f64 x 3/2) 2)
(pow.f64 x 3)
(sqrt.f64 (pow.f64 x 6))
(pow.f64 x 3)
(log.f64 (exp.f64 (pow.f64 x 3)))
(pow.f64 x 3)
(cbrt.f64 (pow.f64 x 9))
(pow.f64 x 3)
(expm1.f64 (log1p.f64 (pow.f64 x 3)))
(pow.f64 x 3)
(exp.f64 (*.f64 (log.f64 x) 3))
(pow.f64 x 3)
(exp.f64 (*.f64 (log.f64 (pow.f64 x 9)) 1/3))
(pow.f64 x 3)
(exp.f64 (*.f64 (*.f64 3/2 (log.f64 x)) 2))
(pow.f64 x 3)
(log1p.f64 (expm1.f64 (pow.f64 x 3)))
(pow.f64 x 3)

eval4.0ms (0.4%)

Compiler

Compiled 146 to 118 computations (19.2% saved)

prune4.0ms (0.4%)

Pruning

2 alts after pruning (1 fresh and 1 done)

PrunedKeptTotal
New21122
Fresh000
Picked011
Done000
Total21223
Accurracy
100.0%
Counts
23 → 2
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(pow.f64 x 3)
99.9%
(*.f64 (*.f64 x x) x)
100.0%
(pow.f64 x 3)
99.9%
(*.f64 (*.f64 x x) x)
Compiler

Compiled 20 to 12 computations (40% saved)

localize19.0ms (1.9%)

Compiler

Compiled 7 to 5 computations (28.6% saved)

eval0.0ms (0%)

Compiler

Compiled 1 to 1 computations (0% saved)

prune1.0ms (0.1%)

Pruning

2 alts after pruning (0 fresh and 2 done)

PrunedKeptTotal
New000
Fresh000
Picked011
Done011
Total022
Accurracy
100.0%
Counts
2 → 2
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(pow.f64 x 3)
99.9%
(*.f64 (*.f64 x x) x)
Compiler

Compiled 19 to 11 computations (42.1% saved)

regimes6.0ms (0.6%)

Counts
2 → 1
Calls
Call 1
Inputs
(*.f64 (*.f64 x x) x)
(pow.f64 x 3)
Outputs
(pow.f64 x 3)
Calls

2 calls:

4.0ms
x
2.0ms
(*.f64 (*.f64 x x) x)
Results
AccuracySegmentsBranch
100.0%1x
100.0%1(*.f64 (*.f64 x x) x)
Compiler

Compiled 17 to 9 computations (47.1% saved)

regimes5.0ms (0.5%)

Accuracy

Total 0.0b remaining (0%)

Threshold costs 0b (0%)

Counts
1 → 1
Calls
Call 1
Inputs
(*.f64 (*.f64 x x) x)
Outputs
(*.f64 (*.f64 x x) x)
Calls

2 calls:

3.0ms
x
2.0ms
(*.f64 (*.f64 x x) x)
Results
AccuracySegmentsBranch
99.9%1x
99.9%1(*.f64 (*.f64 x x) x)
Compiler

Compiled 14 to 7 computations (50% saved)

simplify4.0ms (0.4%)

Algorithm
egg-herbie
Rules
*-commutative
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0720
1820
Stop Event
done
saturated
Calls
Call 1
Inputs
(pow.f64 x 3)
(*.f64 (*.f64 x x) x)
Outputs
(pow.f64 x 3)
(*.f64 (*.f64 x x) x)
(*.f64 x (*.f64 x x))
Compiler

Compiled 10 to 6 computations (40% saved)

soundness0.0ms (0%)

end34.0ms (3.4%)

Compiler

Compiled 38 to 22 computations (42.1% saved)

Profiling

Loading profile data...