Details

Time bar (total: 5.8s)

analyze143.0ms (2.5%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.9%0.1%0
0%99.9%0.1%1
0%99.9%0.1%2
0%99.9%0.1%3
0%99.9%0.1%4
25%74.9%0.1%5
25%68.7%6.3%6
25%56.2%18.8%7
25%48.4%26.6%8
25%35.1%39.9%9
28.1%18.3%53.6%10
31.6%12.3%56.1%11
33.4%5.9%60.8%12
35.2%3.8%61%13
36.1%2.9%61%14
Compiler

Compiled 32 to 22 computations (31.3% saved)

sample26.0ms (0.4%)

Algorithm
intervals
Results
18.0ms256×body128valid
Compiler

Compiled 63 to 45 computations (28.6% saved)

simplify234.0ms (4%)

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 0 (70.0ms)

IterNodesCost
0491246
1491246

prune3.0ms (0.1%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New101
Fresh011
Picked000
Done000
Total112

Merged error: 0.2b

Counts
2 → 1
Compiler

Compiled 62 to 42 computations (32.3% saved)

localize18.0ms (0.3%)

Local error

Found 4 expressions with local error:

0.0b
(+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 4 (+.f64 (*.f64 (*.f64 a a) (+.f64 1 a)) (*.f64 (*.f64 b b) (-.f64 1 (*.f64 3 a))))))
0.1b
(*.f64 (*.f64 a a) (+.f64 1 a))
0.3b
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2)
0.5b
(*.f64 (*.f64 b b) (-.f64 1 (*.f64 3 a)))

rewrite48.0ms (0.8%)

Algorithm
rewrite-expression-head
Rules
15×pow1_binary64_1850 add-exp-log_binary64_1827
14×add-cbrt-cube_binary64_1825
10×*-un-lft-identity_binary64_1789 add-sqr-sqrt_binary64_1811
add-cube-cbrt_binary64_1824
associate-*r*_binary64_1729
pow-prod-down_binary64_1860 cbrt-unprod_binary64_1822 prod-exp_binary64_1838 add-log-exp_binary64_1828
associate-*r/_binary64_1731 distribute-rgt-in_binary64_1739 distribute-lft-in_binary64_1738
unpow-prod-down_binary64_1868 pow-unpow_binary64_1866
associate-+r+_binary64_1721 associate-*l*_binary64_1730 sub-neg_binary64_1782 *-commutative_binary64_1720 cancel-sign-sub-inv_binary64_1755 flip3-+_binary64_1792 unswap-sqr_binary64_1757 flip-+_binary64_1763
flip3--_binary64_1793 sqr-pow_binary64_1761 distribute-lft-out_binary64_1740 pow-exp_binary64_1857 flip--_binary64_1764 sum-log_binary64_1880 +-commutative_binary64_1719 pow-pow_binary64_1861 pow-to-exp_binary64_1858 unpow2_binary64_1854
Counts
4 → 80
Calls

4 calls:

13.0ms
(*.f64 (*.f64 b b) (-.f64 1 (*.f64 3 a)))
10.0ms
(+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 4 (+.f64 (*.f64 (*.f64 a a) (+.f64 1 a)) (*.f64 (*.f64 b b) (-.f64 1 (*.f64 3 a))))))
10.0ms
(*.f64 (*.f64 a a) (+.f64 1 a))
6.0ms
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2)

series337.0ms (5.8%)

Counts
4 → 12
Calls

4 calls:

146.0ms
(+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 4 (+.f64 (*.f64 (*.f64 a a) (+.f64 1 a)) (*.f64 (*.f64 b b) (-.f64 1 (*.f64 3 a))))))
75.0ms
(*.f64 (*.f64 a a) (+.f64 1 a))
63.0ms
(*.f64 (*.f64 b b) (-.f64 1 (*.f64 3 a)))
51.0ms
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2)

simplify43.0ms (0.7%)

Algorithm
egg-herbie
Counts
92 → 92
Iterations

Useful iterations: 0 (22.0ms)

IterNodesCost
051131848

prune149.0ms (2.6%)

Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New88492
Fresh000
Picked011
Done000
Total88593

Merged error: 0.0b

Counts
93 → 5
Compiler

Compiled 3621 to 1957 computations (46% saved)

localize25.0ms (0.4%)

Local error

Found 4 expressions with local error:

0.0b
(+.f64 (+.f64 (*.f64 2 (*.f64 (*.f64 b b) (*.f64 a a))) (+.f64 (pow.f64 b 4) (pow.f64 a 4))) (*.f64 4 (+.f64 (*.f64 (*.f64 a a) (+.f64 1 a)) (*.f64 (*.f64 b b) (-.f64 1 (*.f64 3 a))))))
0.1b
(*.f64 (*.f64 a a) (+.f64 1 a))
0.5b
(*.f64 (*.f64 b b) (-.f64 1 (*.f64 3 a)))
2.6b
(*.f64 (*.f64 b b) (*.f64 a a))

rewrite82.0ms (1.4%)

Algorithm
rewrite-expression-head
Rules
42×pow1_binary64_1850
32×associate-*r/_binary64_1731
26×add-cbrt-cube_binary64_1825 add-exp-log_binary64_1827
20×pow-prod-down_binary64_1860 frac-add_binary64_1797
14×cbrt-unprod_binary64_1822 prod-exp_binary64_1838 flip3-+_binary64_1792 flip-+_binary64_1763
13×add-log-exp_binary64_1828
associate-*r*_binary64_1729 *-un-lft-identity_binary64_1789 add-sqr-sqrt_binary64_1811
sum-log_binary64_1880 add-cube-cbrt_binary64_1824
flip3--_binary64_1793 flip--_binary64_1764
distribute-rgt-in_binary64_1739 pow-plus_binary64_1852 pow-prod-up_binary64_1859 distribute-lft-in_binary64_1738
associate-*l*_binary64_1730 *-commutative_binary64_1720 unswap-sqr_binary64_1757
associate-+r+_binary64_1721 sub-neg_binary64_1782 pow2_binary64_1870 cancel-sign-sub-inv_binary64_1755 pow-sqr_binary64_1762
distribute-lft-out_binary64_1740 +-commutative_binary64_1719 associate-+l+_binary64_1722
Counts
4 → 106
Calls

4 calls:

31.0ms
(+.f64 (+.f64 (*.f64 2 (*.f64 (*.f64 b b) (*.f64 a a))) (+.f64 (pow.f64 b 4) (pow.f64 a 4))) (*.f64 4 (+.f64 (*.f64 (*.f64 a a) (+.f64 1 a)) (*.f64 (*.f64 b b) (-.f64 1 (*.f64 3 a))))))
11.0ms
(*.f64 (*.f64 b b) (*.f64 a a))
10.0ms
(*.f64 (*.f64 a a) (+.f64 1 a))
10.0ms
(*.f64 (*.f64 b b) (-.f64 1 (*.f64 3 a)))

series335.0ms (5.8%)

Counts
4 → 12
Calls

4 calls:

147.0ms
(+.f64 (+.f64 (*.f64 2 (*.f64 (*.f64 b b) (*.f64 a a))) (+.f64 (pow.f64 b 4) (pow.f64 a 4))) (*.f64 4 (+.f64 (*.f64 (*.f64 a a) (+.f64 1 a)) (*.f64 (*.f64 b b) (-.f64 1 (*.f64 3 a))))))
71.0ms
(*.f64 (*.f64 a a) (+.f64 1 a))
70.0ms
(*.f64 (*.f64 b b) (-.f64 1 (*.f64 3 a)))
47.0ms
(*.f64 (*.f64 b b) (*.f64 a a))

simplify94.0ms (1.6%)

Algorithm
egg-herbie
Counts
118 → 118
Iterations

Useful iterations: 0 (56.0ms)

IterNodesCost
049364777
149364777

prune296.0ms (5.1%)

Pruning

5 alts after pruning (3 fresh and 2 done)

PrunedKeptTotal
New1180118
Fresh033
Picked011
Done011
Total1185123

Merged error: 0.0b

Counts
123 → 5
Compiler

Compiled 6636 to 4016 computations (39.5% saved)

localize27.0ms (0.5%)

Local error

Found 4 expressions with local error:

0.6b
(*.f64 (cbrt.f64 (+.f64 (pow.f64 (+.f64 (*.f64 b b) (*.f64 a a)) 2) (*.f64 4 (+.f64 (*.f64 (*.f64 b b) (-.f64 1 (*.f64 3 a))) (*.f64 (*.f64 a a) (+.f64 1 a)))))) (cbrt.f64 (+.f64 (pow.f64 (+.f64 (*.f64 b b) (*.f64 a a)) 2) (*.f64 4 (+.f64 (*.f64 (*.f64 b b) (-.f64 1 (*.f64 3 a))) (*.f64 (*.f64 a a) (+.f64 1 a)))))))
10.1b
(cbrt.f64 (+.f64 (pow.f64 (+.f64 (*.f64 b b) (*.f64 a a)) 2) (*.f64 4 (+.f64 (*.f64 (*.f64 b b) (-.f64 1 (*.f64 3 a))) (*.f64 (*.f64 a a) (+.f64 1 a))))))
10.1b
(cbrt.f64 (+.f64 (pow.f64 (+.f64 (*.f64 b b) (*.f64 a a)) 2) (*.f64 4 (+.f64 (*.f64 (*.f64 b b) (-.f64 1 (*.f64 3 a))) (*.f64 (*.f64 a a) (+.f64 1 a))))))
10.1b
(cbrt.f64 (+.f64 (pow.f64 (+.f64 (*.f64 b b) (*.f64 a a)) 2) (*.f64 4 (+.f64 (*.f64 (*.f64 b b) (-.f64 1 (*.f64 3 a))) (*.f64 (*.f64 a a) (+.f64 1 a))))))

rewrite80.0ms (1.4%)

Algorithm
rewrite-expression-head
Rules
25×cbrt-prod_binary64_1820
23×add-sqr-sqrt_binary64_1811
18×cbrt-div_binary64_1821
15×*-un-lft-identity_binary64_1789 add-cube-cbrt_binary64_1824
11×pow1_binary64_1850
pow1/3_binary64_1871 flip3-+_binary64_1792 flip-+_binary64_1763
associate-*l*_binary64_1730 swap-sqr_binary64_1756 associate-*r*_binary64_1729 add-exp-log_binary64_1827
frac-times_binary64_1799 add-cbrt-cube_binary64_1825 unswap-sqr_binary64_1757 add-log-exp_binary64_1828
associate-*r/_binary64_1731 pow-prod-down_binary64_1860 pow-prod-up_binary64_1859 pow-sqr_binary64_1762 associate-*l/_binary64_1732
cbrt-unprod_binary64_1822 *-commutative_binary64_1720 prod-exp_binary64_1838 pow-plus_binary64_1852 pow2_binary64_1870
Counts
4 → 87
Calls

4 calls:

23.0ms
(*.f64 (cbrt.f64 (+.f64 (pow.f64 (+.f64 (*.f64 b b) (*.f64 a a)) 2) (*.f64 4 (+.f64 (*.f64 (*.f64 b b) (-.f64 1 (*.f64 3 a))) (*.f64 (*.f64 a a) (+.f64 1 a)))))) (cbrt.f64 (+.f64 (pow.f64 (+.f64 (*.f64 b b) (*.f64 a a)) 2) (*.f64 4 (+.f64 (*.f64 (*.f64 b b) (-.f64 1 (*.f64 3 a))) (*.f64 (*.f64 a a) (+.f64 1 a)))))))
8.0ms
(cbrt.f64 (+.f64 (pow.f64 (+.f64 (*.f64 b b) (*.f64 a a)) 2) (*.f64 4 (+.f64 (*.f64 (*.f64 b b) (-.f64 1 (*.f64 3 a))) (*.f64 (*.f64 a a) (+.f64 1 a))))))
8.0ms
(cbrt.f64 (+.f64 (pow.f64 (+.f64 (*.f64 b b) (*.f64 a a)) 2) (*.f64 4 (+.f64 (*.f64 (*.f64 b b) (-.f64 1 (*.f64 3 a))) (*.f64 (*.f64 a a) (+.f64 1 a))))))
8.0ms
(cbrt.f64 (+.f64 (pow.f64 (+.f64 (*.f64 b b) (*.f64 a a)) 2) (*.f64 4 (+.f64 (*.f64 (*.f64 b b) (-.f64 1 (*.f64 3 a))) (*.f64 (*.f64 a a) (+.f64 1 a))))))

series1.4s (23.9%)

Counts
4 → 12
Calls

4 calls:

457.0ms
(*.f64 (cbrt.f64 (+.f64 (pow.f64 (+.f64 (*.f64 b b) (*.f64 a a)) 2) (*.f64 4 (+.f64 (*.f64 (*.f64 b b) (-.f64 1 (*.f64 3 a))) (*.f64 (*.f64 a a) (+.f64 1 a)))))) (cbrt.f64 (+.f64 (pow.f64 (+.f64 (*.f64 b b) (*.f64 a a)) 2) (*.f64 4 (+.f64 (*.f64 (*.f64 b b) (-.f64 1 (*.f64 3 a))) (*.f64 (*.f64 a a) (+.f64 1 a)))))))
310.0ms
(cbrt.f64 (+.f64 (pow.f64 (+.f64 (*.f64 b b) (*.f64 a a)) 2) (*.f64 4 (+.f64 (*.f64 (*.f64 b b) (-.f64 1 (*.f64 3 a))) (*.f64 (*.f64 a a) (+.f64 1 a))))))
310.0ms
(cbrt.f64 (+.f64 (pow.f64 (+.f64 (*.f64 b b) (*.f64 a a)) 2) (*.f64 4 (+.f64 (*.f64 (*.f64 b b) (-.f64 1 (*.f64 3 a))) (*.f64 (*.f64 a a) (+.f64 1 a))))))
305.0ms
(cbrt.f64 (+.f64 (pow.f64 (+.f64 (*.f64 b b) (*.f64 a a)) 2) (*.f64 4 (+.f64 (*.f64 (*.f64 b b) (-.f64 1 (*.f64 3 a))) (*.f64 (*.f64 a a) (+.f64 1 a))))))

simplify90.0ms (1.5%)

Algorithm
egg-herbie
Counts
99 → 99
Iterations

Useful iterations: 0 (37.0ms)

IterNodesCost
052187108

prune480.0ms (8.3%)

Pruning

5 alts after pruning (2 fresh and 3 done)

PrunedKeptTotal
New99099
Fresh022
Picked011
Done022
Total995104

Merged error: 0.0b

Counts
104 → 5
Compiler

Compiled 10920 to 5856 computations (46.4% saved)

localize26.0ms (0.4%)

Local error

Found 4 expressions with local error:

0.5b
(*.f64 (*.f64 b b) (-.f64 1 (*.f64 3 a)))
0.7b
(pow.f64 (cbrt.f64 (+.f64 (*.f64 b b) (*.f64 a a))) 4)
10.2b
(cbrt.f64 (+.f64 (*.f64 b b) (*.f64 a a)))
10.2b
(cbrt.f64 (+.f64 (*.f64 b b) (*.f64 a a)))

rewrite36.0ms (0.6%)

Algorithm
rewrite-expression-head
Rules
11×add-sqr-sqrt_binary64_1811
10×pow1_binary64_1850 *-un-lft-identity_binary64_1789 add-exp-log_binary64_1827 add-cube-cbrt_binary64_1824
add-cbrt-cube_binary64_1825 cbrt-prod_binary64_1820
unpow-prod-down_binary64_1868
cbrt-div_binary64_1821 add-log-exp_binary64_1828
pow-prod-down_binary64_1860 cbrt-unprod_binary64_1822 pow1/3_binary64_1871 prod-exp_binary64_1838 associate-*r*_binary64_1729 pow-unpow_binary64_1866
associate-*r/_binary64_1731 distribute-rgt-in_binary64_1739 sub-neg_binary64_1782 cancel-sign-sub-inv_binary64_1755 pow-pow_binary64_1861 distribute-lft-in_binary64_1738 flip3-+_binary64_1792 flip-+_binary64_1763
flip3--_binary64_1793 associate-*l*_binary64_1730 sqr-pow_binary64_1761 *-commutative_binary64_1720 pow-exp_binary64_1857 flip--_binary64_1764 unswap-sqr_binary64_1757 pow-to-exp_binary64_1858
Counts
4 → 72
Calls

4 calls:

10.0ms
(*.f64 (*.f64 b b) (-.f64 1 (*.f64 3 a)))
6.0ms
(pow.f64 (cbrt.f64 (+.f64 (*.f64 b b) (*.f64 a a))) 4)
5.0ms
(cbrt.f64 (+.f64 (*.f64 b b) (*.f64 a a)))
4.0ms
(cbrt.f64 (+.f64 (*.f64 b b) (*.f64 a a)))

series580.0ms (10%)

Counts
4 → 12
Calls

4 calls:

224.0ms
(pow.f64 (cbrt.f64 (+.f64 (*.f64 b b) (*.f64 a a))) 4)
159.0ms
(cbrt.f64 (+.f64 (*.f64 b b) (*.f64 a a)))
131.0ms
(cbrt.f64 (+.f64 (*.f64 b b) (*.f64 a a)))
66.0ms
(*.f64 (*.f64 b b) (-.f64 1 (*.f64 3 a)))

simplify75.0ms (1.3%)

Algorithm
egg-herbie
Counts
84 → 84
Iterations

Useful iterations: 0 (55.0ms)

IterNodesCost
048931409
148931409

prune150.0ms (2.6%)

Pruning

5 alts after pruning (1 fresh and 4 done)

PrunedKeptTotal
New83184
Fresh101
Picked011
Done033
Total84589

Merged error: 0.0b

Counts
89 → 5
Compiler

Compiled 4036 to 1891 computations (53.1% saved)

regimes120.0ms (2.1%)

Compiler

Compiled 1675 to 1009 computations (39.8% saved)

bsearch0.0ms (0%)

simplify3.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (1.0ms)

IterNodesCost
07758
17758

end0.0ms (0%)

sample914.0ms (15.8%)

Algorithm
intervals
Results
548.0ms8000×body128valid
0.0msbody128invalid
Compiler

Compiled 334 to 207 computations (38% saved)

Profiling

Loading profile data...