Details

Time bar (total: 10.2s)

analyze1.6s (15.4%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.8%0.2%0
0%99.8%0.2%1
0%99.8%0.2%2
0%99.8%0.2%3
0%99.8%0.2%4
0%99.8%0.2%5
0%99.8%0.2%6
0%99.8%0.2%7
0%99.8%0.2%8
0%99.8%0.2%9
1.6%98.2%0.2%10
3.1%90.4%6.5%11
9.2%84.4%6.5%12
13%80.6%6.5%13
24.8%68.7%6.5%14
Compiler

Compiled 20 to 13 computations (35% saved)

sample1.7s (17%)

Symmetry

(sort x y)

(sort t a)

Results
1.2s8256×body128valid
435.0ms3144×body128invalid
Compiler

Compiled 59 to 38 computations (35.6% saved)

simplify62.0ms (0.6%)

Algorithm
egg-herbie
Rules
1034×fma-def_binary64
336×fma-neg_binary64
138×distribute-rgt-in_binary64
130×cancel-sign-sub-inv_binary64
128×associate-/r/_binary64
Counts
1 → 1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01321
12621
25221
38721
412821
516121
620321
724721
846421
982221
10123421
11116921
12123721
13131121
14137521
15137521
16128221

prune2.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
23.0b
Counts
2 → 1
Alt Table
StatusErrorProgram
23.0b
(/.f64 (*.f64 (*.f64 x y) z) (sqrt.f64 (-.f64 (*.f64 z z) (*.f64 t a))))
Compiler

Compiled 57 to 36 computations (36.8% saved)

localize9.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.6b
(-.f64 (*.f64 z z) (*.f64 t a))
5.0b
(*.f64 (*.f64 x y) z)
9.6b
(/.f64 (*.f64 (*.f64 x y) z) (sqrt.f64 (-.f64 (*.f64 z z) (*.f64 t a))))
24.9b
(sqrt.f64 (-.f64 (*.f64 z z) (*.f64 t a)))

series262.0ms (2.6%)

Counts
4 → 136
Calls

4 calls:

203.0ms
(/.f64 (*.f64 (*.f64 x y) z) (sqrt.f64 (-.f64 (*.f64 z z) (*.f64 t a))))
40.0ms
(sqrt.f64 (-.f64 (*.f64 z z) (*.f64 t a)))
10.0ms
(*.f64 (*.f64 x y) z)
8.0ms
(-.f64 (*.f64 z z) (*.f64 t a))

rewrite23.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
18×add-cbrt-cube_binary64
18×add-exp-log_binary64
11×add-sqr-sqrt_binary64
10×*-un-lft-identity_binary64
10×add-cube-cbrt_binary64
Counts
4 → 86
Calls

4 calls:

7.0ms
(/.f64 (*.f64 (*.f64 x y) z) (sqrt.f64 (-.f64 (*.f64 z z) (*.f64 t a))))
4.0ms
(sqrt.f64 (-.f64 (*.f64 z z) (*.f64 t a)))
4.0ms
(*.f64 (*.f64 x y) z)
3.0ms
(-.f64 (*.f64 z z) (*.f64 t a))

simplify125.0ms (1.2%)

Algorithm
egg-herbie
Rules
731×fma-def_binary64
379×times-frac_binary64
318×associate-*r*_binary64
293×associate-*l*_binary64
277×associate-/l*_binary64
Counts
222 → 190
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02834463
18424196
238994138
349614138
449764138

prune144.0ms (1.4%)

Pruning

9 alts after pruning (9 fresh and 0 done)

PrunedKeptTotal
New1819190
Fresh000
Picked101
Done000
Total1829191
Error
3.4b
Counts
191 → 9
Alt Table
StatusErrorProgram
23.6b
(*.f64 (/.f64 (*.f64 y x) (*.f64 (cbrt.f64 (hypot.f64 (sqrt.f64 (neg.f64 (*.f64 a t))) z)) (cbrt.f64 (hypot.f64 (sqrt.f64 (neg.f64 (*.f64 a t))) z)))) (/.f64 z (cbrt.f64 (hypot.f64 (sqrt.f64 (neg.f64 (*.f64 a t))) z))))
36.9b
(neg.f64 (*.f64 y x))
21.2b
(/.f64 (*.f64 x y) (/.f64 (hypot.f64 (sqrt.f64 (neg.f64 (*.f64 a t))) z) z))
23.0b
(*.f64 (*.f64 (*.f64 x y) z) (/.f64 1 (sqrt.f64 (-.f64 (*.f64 z z) (*.f64 t a)))))
26.9b
(/.f64 1 (/.f64 (hypot.f64 (sqrt.f64 (neg.f64 (*.f64 a t))) z) (*.f64 y (*.f64 z x))))
26.5b
(/.f64 (*.f64 (*.f64 x y) z) (exp.f64 (log.f64 (hypot.f64 (sqrt.f64 (neg.f64 (*.f64 a t))) z))))
22.9b
(*.f64 (/.f64 (*.f64 y x) (sqrt.f64 (hypot.f64 (sqrt.f64 (neg.f64 (*.f64 a t))) z))) (/.f64 z (sqrt.f64 (hypot.f64 (sqrt.f64 (neg.f64 (*.f64 a t))) z))))
36.9b
(*.f64 y x)
45.2b
(*.f64 y (*.f64 (sqrt.f64 (/.f64 -1 (*.f64 a t))) (*.f64 z x)))
Compiler

Compiled 5062 to 1543 computations (69.5% saved)

localize10.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.1b
(/.f64 (hypot.f64 (sqrt.f64 (neg.f64 (*.f64 a t))) z) z)
3.6b
(/.f64 (*.f64 x y) (/.f64 (hypot.f64 (sqrt.f64 (neg.f64 (*.f64 a t))) z) z))
14.7b
(sqrt.f64 (neg.f64 (*.f64 a t)))

series680.0ms (6.7%)

Counts
3 → 52
Calls

3 calls:

505.0ms
(/.f64 (*.f64 x y) (/.f64 (hypot.f64 (sqrt.f64 (neg.f64 (*.f64 a t))) z) z))
159.0ms
(/.f64 (hypot.f64 (sqrt.f64 (neg.f64 (*.f64 a t))) z) z)
16.0ms
(sqrt.f64 (neg.f64 (*.f64 a t)))

rewrite14.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
40×times-frac_binary64
27×add-sqr-sqrt_binary64
26×*-un-lft-identity_binary64
26×add-cube-cbrt_binary64
17×add-cbrt-cube_binary64
Counts
3 → 95
Calls

3 calls:

5.0ms
(/.f64 (*.f64 x y) (/.f64 (hypot.f64 (sqrt.f64 (neg.f64 (*.f64 a t))) z) z))
2.0ms
(/.f64 (hypot.f64 (sqrt.f64 (neg.f64 (*.f64 a t))) z) z)
1.0ms
(sqrt.f64 (neg.f64 (*.f64 a t)))

simplify112.0ms (1.1%)

Algorithm
egg-herbie
Rules
641×associate-/r/_binary64
607×associate-*r/_binary64
266×fma-def_binary64
200×cancel-sign-sub-inv_binary64
157×associate-/l*_binary64
Counts
147 → 175
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02684134
16543630
224023587
352063587

prune118.0ms (1.2%)

Pruning

7 alts after pruning (6 fresh and 1 done)

PrunedKeptTotal
New1741175
Fresh358
Picked011
Done000
Total1777184
Error
1.2b
Counts
184 → 7
Alt Table
StatusErrorProgram
21.2b
(/.f64 (*.f64 x y) (/.f64 (hypot.f64 (sqrt.f64 (neg.f64 (*.f64 a t))) z) z))
23.0b
(*.f64 (*.f64 (*.f64 x y) z) (/.f64 1 (sqrt.f64 (-.f64 (*.f64 z z) (*.f64 t a)))))
26.9b
(/.f64 1 (/.f64 (hypot.f64 (sqrt.f64 (neg.f64 (*.f64 a t))) z) (*.f64 y (*.f64 z x))))
36.9b
(neg.f64 (*.f64 y x))
21.7b
(/.f64 (*.f64 x y) (/.f64 (hypot.f64 (*.f64 (sqrt.f64 a) (sqrt.f64 (neg.f64 t))) z) z))
36.9b
(*.f64 y x)
45.2b
(*.f64 y (*.f64 (sqrt.f64 (/.f64 -1 (*.f64 a t))) (*.f64 z x)))
Compiler

Compiled 4591 to 1227 computations (73.3% saved)

localize10.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.1b
(/.f64 (hypot.f64 (*.f64 (sqrt.f64 a) (sqrt.f64 (neg.f64 t))) z) z)
0.3b
(*.f64 (sqrt.f64 a) (sqrt.f64 (neg.f64 t)))
3.6b
(/.f64 (*.f64 x y) (/.f64 (hypot.f64 (*.f64 (sqrt.f64 a) (sqrt.f64 (neg.f64 t))) z) z))

series644.0ms (6.3%)

Counts
3 → 52
Calls

3 calls:

478.0ms
(/.f64 (*.f64 x y) (/.f64 (hypot.f64 (*.f64 (sqrt.f64 a) (sqrt.f64 (neg.f64 t))) z) z))
151.0ms
(/.f64 (hypot.f64 (*.f64 (sqrt.f64 a) (sqrt.f64 (neg.f64 t))) z) z)
16.0ms
(*.f64 (sqrt.f64 a) (sqrt.f64 (neg.f64 t)))

rewrite23.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
41×add-sqr-sqrt_binary64
40×times-frac_binary64
31×*-un-lft-identity_binary64
31×add-cube-cbrt_binary64
19×add-cbrt-cube_binary64
Counts
3 → 117
Calls

3 calls:

6.0ms
(*.f64 (sqrt.f64 a) (sqrt.f64 (neg.f64 t)))
5.0ms
(/.f64 (*.f64 x y) (/.f64 (hypot.f64 (*.f64 (sqrt.f64 a) (sqrt.f64 (neg.f64 t))) z) z))
2.0ms
(/.f64 (hypot.f64 (*.f64 (sqrt.f64 a) (sqrt.f64 (neg.f64 t))) z) z)

simplify162.0ms (1.6%)

Algorithm
egg-herbie
Rules
648×fma-def_binary64
217×associate-*r*_binary64
216×associate-*l*_binary64
205×cancel-sign-sub-inv_binary64
185×fma-neg_binary64
Counts
169 → 232
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
03294800
18494428
230294227
345904225
449804225
549314225

prune180.0ms (1.8%)

Pruning

10 alts after pruning (10 fresh and 0 done)

PrunedKeptTotal
New2275232
Fresh055
Picked101
Done101
Total22910239
Error
0b
Counts
239 → 10
Alt Table
StatusErrorProgram
26.9b
(/.f64 1 (/.f64 (hypot.f64 (sqrt.f64 (neg.f64 (*.f64 a t))) z) (*.f64 y (*.f64 z x))))
24.5b
(*.f64 (/.f64 x (hypot.f64 (*.f64 (sqrt.f64 a) (sqrt.f64 (neg.f64 t))) z)) (/.f64 y (/.f64 1 z)))
36.9b
(neg.f64 (*.f64 y x))
23.1b
(/.f64 x (/.f64 (hypot.f64 (*.f64 (sqrt.f64 (neg.f64 t)) (sqrt.f64 a)) z) (*.f64 z y)))
21.7b
(*.f64 (*.f64 x y) (/.f64 1 (/.f64 (hypot.f64 (*.f64 (sqrt.f64 a) (sqrt.f64 (neg.f64 t))) z) z)))
22.1b
(/.f64 1 (/.f64 (/.f64 (hypot.f64 (*.f64 (sqrt.f64 a) (sqrt.f64 (neg.f64 t))) z) z) (*.f64 x y)))
23.0b
(*.f64 (*.f64 (*.f64 x y) z) (/.f64 1 (sqrt.f64 (-.f64 (*.f64 z z) (*.f64 t a)))))
40.9b
(/.f64 (*.f64 x y) (*.f64 (/.f64 (sqrt.f64 (neg.f64 t)) z) (sqrt.f64 a)))
36.9b
(*.f64 y x)
45.2b
(*.f64 y (*.f64 (sqrt.f64 (/.f64 -1 (*.f64 a t))) (*.f64 z x)))
Compiler

Compiled 6397 to 1842 computations (71.2% saved)

localize12.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(/.f64 (hypot.f64 (*.f64 (sqrt.f64 a) (sqrt.f64 (neg.f64 t))) z) z)
0.3b
(*.f64 (sqrt.f64 a) (sqrt.f64 (neg.f64 t)))
0.6b
(/.f64 1 (/.f64 (hypot.f64 (*.f64 (sqrt.f64 a) (sqrt.f64 (neg.f64 t))) z) z))
3.2b
(*.f64 (*.f64 x y) (/.f64 1 (/.f64 (hypot.f64 (*.f64 (sqrt.f64 a) (sqrt.f64 (neg.f64 t))) z) z)))

series704.0ms (6.9%)

Counts
2 → 52
Calls

2 calls:

487.0ms
(*.f64 (*.f64 x y) (/.f64 1 (/.f64 (hypot.f64 (*.f64 (sqrt.f64 a) (sqrt.f64 (neg.f64 t))) z) z)))
216.0ms
(/.f64 1 (/.f64 (hypot.f64 (*.f64 (sqrt.f64 a) (sqrt.f64 (neg.f64 t))) z) z))

rewrite36.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
141×times-frac_binary64
79×*-un-lft-identity_binary64
79×add-sqr-sqrt_binary64
79×add-cube-cbrt_binary64
58×add-exp-log_binary64
Counts
2 → 157
Calls

2 calls:

10.0ms
(*.f64 (*.f64 x y) (/.f64 1 (/.f64 (hypot.f64 (*.f64 (sqrt.f64 a) (sqrt.f64 (neg.f64 t))) z) z)))
4.0ms
(/.f64 1 (/.f64 (hypot.f64 (*.f64 (sqrt.f64 a) (sqrt.f64 (neg.f64 t))) z) z))

simplify142.0ms (1.4%)

Algorithm
egg-herbie
Rules
566×associate-/r/_binary64
366×fma-def_binary64
290×associate-*l*_binary64
284×associate-*r*_binary64
241×cancel-sign-sub-inv_binary64
Counts
209 → 282
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02926770
17935969
228575718
351135718

prune301.0ms (3%)

Pruning

10 alts after pruning (9 fresh and 1 done)

PrunedKeptTotal
New4060406
Fresh099
Picked011
Done000
Total40610416
Error
0b
Counts
416 → 10
Alt Table
StatusErrorProgram
26.9b
(/.f64 1 (/.f64 (hypot.f64 (sqrt.f64 (neg.f64 (*.f64 a t))) z) (*.f64 y (*.f64 z x))))
24.5b
(*.f64 (/.f64 x (hypot.f64 (*.f64 (sqrt.f64 a) (sqrt.f64 (neg.f64 t))) z)) (/.f64 y (/.f64 1 z)))
36.9b
(neg.f64 (*.f64 y x))
23.1b
(/.f64 x (/.f64 (hypot.f64 (*.f64 (sqrt.f64 (neg.f64 t)) (sqrt.f64 a)) z) (*.f64 z y)))
21.7b
(*.f64 (*.f64 x y) (/.f64 1 (/.f64 (hypot.f64 (*.f64 (sqrt.f64 a) (sqrt.f64 (neg.f64 t))) z) z)))
22.1b
(/.f64 1 (/.f64 (/.f64 (hypot.f64 (*.f64 (sqrt.f64 a) (sqrt.f64 (neg.f64 t))) z) z) (*.f64 x y)))
23.0b
(*.f64 (*.f64 (*.f64 x y) z) (/.f64 1 (sqrt.f64 (-.f64 (*.f64 z z) (*.f64 t a)))))
40.9b
(/.f64 (*.f64 x y) (*.f64 (/.f64 (sqrt.f64 (neg.f64 t)) z) (sqrt.f64 a)))
36.9b
(*.f64 y x)
45.2b
(*.f64 y (*.f64 (sqrt.f64 (/.f64 -1 (*.f64 a t))) (*.f64 z x)))
Compiler

Compiled 11961 to 3602 computations (69.9% saved)

regimes2.5s (24.7%)

Accuracy

Total 5.3b remaining (97.6%)

Threshold costs 0b (0%)

Counts
95 → 5
Compiler

Compiled 18032 to 11190 computations (37.9% saved)

bsearch138.0ms (1.4%)

Steps
ItersRangePoint
7
1.651129428624487e+148
2.852971518133296e+149
3.2862688268057826e+148
9
1.054870462193967e-132
1.5050524614476815e-125
1.0712262234135167e-132
7
-1.9404207378295913e-81
-1.5782755812776344e-83
-1.6005527008883997e-83
1
-3.998500466365632e+154
-4.216808940649509e+150
-3.9587781002086833e+152
Compiler

Compiled 6 to 5 computations (16.7% saved)

simplify5.0ms (0.1%)

Algorithm
egg-herbie
Rules
11×*-commutative_binary64
+-commutative_binary64
sub-neg_binary64
neg-sub0_binary64
neg-mul-1_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03698
15498
27098
38098
48598
58698
68698

end440.0ms (4.3%)

Compiler

Compiled 594 to 321 computations (46% saved)

Profiling

Loading profile data...