Details

Time bar (total: 3.6s)

sample38.0ms

Algorithm
intervals
Results
23.0ms640×body80valid

simplify51.0ms

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 2 (5.0ms)

IterNodesCost
0268
1518
2887
31537
43577
515727
650027

prune5.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 0.2b

localize9.0ms

Local error

Found 3 expressions with local error:

0.0b
(* 4.0 (* b b))
0.0b
(+ (pow (+ (* a a) (* b b)) 2.0) (* 4.0 (* b b)))
0.3b
(pow (+ (* a a) (* b b)) 2.0)

rewrite43.0ms

Algorithm
rewrite-expression-head
Rules
pow1 add-exp-log add-sqr-sqrt
add-cube-cbrt *-un-lft-identity add-cbrt-cube
fma-def
unpow-prod-down
add-log-exp
expm1-log1p-u pow-unpow associate-*l* pow-prod-down prod-exp cbrt-unprod log1p-expm1-u
sqr-pow
+-commutative pow-to-exp pow-pow flip3-+ associate-*r* pow-exp sum-log *-commutative flip-+ unswap-sqr
Counts
3 → 60
Calls
3 calls:
6.0ms
(* 4.0 (* b b))
31.0ms
(+ (pow (+ (* a a) (* b b)) 2.0) (* 4.0 (* b b)))
4.0ms
(pow (+ (* a a) (* b b)) 2.0)

series197.0ms

Counts
3 → 9
Calls
3 calls:
25.0ms
(* 4.0 (* b b))
69.0ms
(+ (pow (+ (* a a) (* b b)) 2.0) (* 4.0 (* b b)))
104.0ms
(pow (+ (* a a) (* b b)) 2.0)

simplify116.0ms

Algorithm
egg-herbie
Counts
69 → 69
Iterations

Useful iterations: 3 (110.0ms)

IterNodesCost
0261370
11003336
23910326
35001322

prune180.0ms

Pruning

3 alts after pruning (3 fresh and 0 done)

Merged error: 0.0b

localize11.0ms

Local error

Found 2 expressions with local error:

0.1b
(fma b (* b (fma b b (* 2 (pow a 2)))) (pow a 4))
0.2b
(* b (fma b b (* 2 (pow a 2))))

rewrite4.0ms

Algorithm
rewrite-expression-head
Rules
add-sqr-sqrt
pow1 add-exp-log add-cube-cbrt *-un-lft-identity add-cbrt-cube
associate-*r* associate-*l* fma-udef
expm1-log1p-u log1p-expm1-u add-log-exp
distribute-rgt-in distribute-lft-in pow-prod-down prod-exp *-commutative cbrt-unprod unswap-sqr
Counts
2 → 32
Calls
2 calls:
0.0ms
(fma b (* b (fma b b (* 2 (pow a 2)))) (pow a 4))
3.0ms
(* b (fma b b (* 2 (pow a 2))))

series136.0ms

Counts
2 → 6
Calls
2 calls:
74.0ms
(fma b (* b (fma b b (* 2 (pow a 2)))) (pow a 4))
62.0ms
(* b (fma b b (* 2 (pow a 2))))

simplify103.0ms

Algorithm
egg-herbie
Counts
38 → 38
Iterations

Useful iterations: 1 (5.0ms)

IterNodesCost
0131256
1578220
22835220
35001220

prune120.0ms

Pruning

3 alts after pruning (2 fresh and 1 done)

Merged error: 0.0b

localize13.0ms

Local error

Found 3 expressions with local error:

0.0b
(* 4.0 (* b b))
0.0b
(+ (fma (* 2.0 (pow a 2)) (pow b 2) (pow b 4)) (* 4.0 (* b b)))
0.7b
(fma (* 2.0 (pow a 2)) (pow b 2) (pow b 4))

rewrite10.0ms

Algorithm
rewrite-expression-head
Rules
pow1 add-exp-log add-cbrt-cube
add-sqr-sqrt
add-cube-cbrt *-un-lft-identity add-log-exp
expm1-log1p-u fma-def associate-*l* pow-prod-down prod-exp cbrt-unprod log1p-expm1-u
fma-udef
+-commutative associate-+l+ flip3-+ associate-*r* sum-log *-commutative flip-+ unswap-sqr
Counts
3 → 48
Calls
3 calls:
6.0ms
(* 4.0 (* b b))
3.0ms
(+ (fma (* 2.0 (pow a 2)) (pow b 2) (pow b 4)) (* 4.0 (* b b)))
0.0ms
(fma (* 2.0 (pow a 2)) (pow b 2) (pow b 4))

series166.0ms

Counts
3 → 9
Calls
3 calls:
25.0ms
(* 4.0 (* b b))
66.0ms
(+ (fma (* 2.0 (pow a 2)) (pow b 2) (pow b 4)) (* 4.0 (* b b)))
75.0ms
(fma (* 2.0 (pow a 2)) (pow b 2) (pow b 4))

simplify117.0ms

Algorithm
egg-herbie
Counts
57 → 57
Iterations

Useful iterations: 3 (112.0ms)

IterNodesCost
0192359
1807325
23679308
35001301

prune167.0ms

Pruning

3 alts after pruning (1 fresh and 2 done)

Merged error: 0.0b

localize20.0ms

Local error

Found 4 expressions with local error:

0.0b
(fma (- (* 4.0 4.0)) (pow b 4) (pow (fma a a (* b b)) (* 2 2.0)))
0.3b
(pow (fma a a (* b b)) (* 2 2.0))
0.3b
(pow (fma a a (* b b)) 2.0)
35.5b
(/ (fma (- (* 4.0 4.0)) (pow b 4) (pow (fma a a (* b b)) (* 2 2.0))) (fma (- b) (* 4.0 b) (pow (fma a a (* b b)) 2.0)))

rewrite6.0ms

Algorithm
rewrite-expression-head
Rules
15×add-sqr-sqrt add-cube-cbrt *-un-lft-identity
times-frac
add-exp-log
pow1 unpow-prod-down add-cbrt-cube
expm1-log1p-u pow-unpow log1p-expm1-u add-log-exp
associate-/r* associate-/l*
pow-to-exp pow-pow pow-exp sqr-pow
cbrt-undiv frac-2neg div-exp clear-num fma-udef div-inv
Counts
4 → 75
Calls
4 calls:
0.0ms
(fma (- (* 4.0 4.0)) (pow b 4) (pow (fma a a (* b b)) (* 2 2.0)))
1.0ms
(pow (fma a a (* b b)) (* 2 2.0))
1.0ms
(pow (fma a a (* b b)) 2.0)
2.0ms
(/ (fma (- (* 4.0 4.0)) (pow b 4) (pow (fma a a (* b b)) (* 2 2.0))) (fma (- b) (* 4.0 b) (pow (fma a a (* b b)) 2.0)))

series479.0ms

Counts
4 → 12
Calls
4 calls:
76.0ms
(fma (- (* 4.0 4.0)) (pow b 4) (pow (fma a a (* b b)) (* 2 2.0)))
119.0ms
(pow (fma a a (* b b)) (* 2 2.0))
115.0ms
(pow (fma a a (* b b)) 2.0)
168.0ms
(/ (fma (- (* 4.0 4.0)) (pow b 4) (pow (fma a a (* b b)) (* 2 2.0))) (fma (- b) (* 4.0 b) (pow (fma a a (* b b)) 2.0)))

simplify50.0ms

Algorithm
egg-herbie
Counts
87 → 87
Iterations

Useful iterations: 2 (32.0ms)

IterNodesCost
03041052
11244957
25001947

prune352.0ms

Pruning

3 alts after pruning (0 fresh and 3 done)

Merged error: 0.0b

regimes52.0ms

Accuracy

82.3% (0.2b remaining)

Error of 0.2b against oracle of 0.0b and baseline of 1.1b

bsearch108.0ms

Steps
ItersRangePoint
7
1.1338573995210022e-07
2.2112458842293344e-05
4.1950544641832567e-07
10
-48697182374164.98
-30.29444851407267
-30.610781749505392

simplify2.0ms

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03616
13616

end0.0ms

sample1.1s

Algorithm
intervals
Results
742.0ms20316×body80valid