Details

Time bar (total: 4.5s)

sample48.0ms

Algorithm
intervals
Results
17.0ms77×body1280valid
8.0ms182×body80valid
8.0ms49×body640valid
3.0ms31×body320valid
1.0ms13×body160valid

simplify61.0ms

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 0 (1.0ms)

IterNodesCost
0113
1183
2263
3483
41103
53183
616233
750013

prune4.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 32.3b

localize5.0ms

Local error

Found 2 expressions with local error:

0.0b
(exp (* a x))
3.0b
(- (exp (* a x)) 1.0)

rewrite6.0ms

Algorithm
rewrite-expression-head
Rules
add-log-exp
add-sqr-sqrt *-un-lft-identity
pow1 add-exp-log add-cube-cbrt add-cbrt-cube
sub-neg exp-prod flip3-- exp-to-pow diff-log flip-- rem-exp-log distribute-lft-out-- difference-of-squares
Counts
2 → 24
Calls
2 calls:
1.0ms
(exp (* a x))
4.0ms
(- (exp (* a x)) 1.0)

series12.0ms

Counts
2 → 6
Calls
2 calls:
4.0ms
(exp (* a x))
8.0ms
(- (exp (* a x)) 1.0)

simplify41.0ms

Algorithm
egg-herbie
Counts
30 → 30
Iterations

Useful iterations: 2 (11.0ms)

IterNodesCost
0115135
1333127
21116125
35001125

prune161.0ms

Pruning

6 alts after pruning (6 fresh and 0 done)

Merged error: 9.4b

localize15.0ms

Local error

Found 4 expressions with local error:

1.0b
(* x (+ a (* (* 1/2 (pow a 2)) x)))
9.9b
(* (* 1/2 (pow a 2)) x)
13.1b
(+ (* x (+ a (* (* 1/2 (pow a 2)) x))) (* 1/6 (* (pow a 3) (pow x 3))))
17.7b
(* (pow a 3) (pow x 3))

rewrite39.0ms

Algorithm
rewrite-expression-head
Rules
39×add-sqr-sqrt
28×add-exp-log
18×associate-*r*
17×prod-exp unswap-sqr
16×associate-*l*
14×unpow-prod-down cube-prod
13×add-cube-cbrt *-un-lft-identity add-cbrt-cube
10×sqr-pow
pow1
pow-to-exp pow-exp
add-log-exp
cbrt-unprod
pow-prod-down *-commutative
distribute-rgt-in cube-mult associate-+l+ distribute-lft-in flip3-+ unpow3 associate-*r/ flip-+
+-commutative sum-log
Counts
4 → 113
Calls
4 calls:
7.0ms
(* x (+ a (* (* 1/2 (pow a 2)) x)))
10.0ms
(* (* 1/2 (pow a 2)) x)
6.0ms
(+ (* x (+ a (* (* 1/2 (pow a 2)) x))) (* 1/6 (* (pow a 3) (pow x 3))))
11.0ms
(* (pow a 3) (pow x 3))

series50.0ms

Counts
4 → 12
Calls
4 calls:
14.0ms
(* x (+ a (* (* 1/2 (pow a 2)) x)))
4.0ms
(* (* 1/2 (pow a 2)) x)
21.0ms
(+ (* x (+ a (* (* 1/2 (pow a 2)) x))) (* 1/6 (* (pow a 3) (pow x 3))))
11.0ms
(* (pow a 3) (pow x 3))

simplify99.0ms

Algorithm
egg-herbie
Counts
125 → 125
Iterations

Useful iterations: 1 (14.0ms)

IterNodesCost
0471797
12758738
25001738

prune808.0ms

Pruning

6 alts after pruning (6 fresh and 0 done)

Merged error: 3.0b

localize14.0ms

Local error

Found 4 expressions with local error:

0.2b
(pow (* a x) 3)
1.0b
(* x (+ a (* (* 1/2 (pow a 2)) x)))
9.9b
(* (* 1/2 (pow a 2)) x)
13.1b
(+ (* x (+ a (* (* 1/2 (pow a 2)) x))) (* 1/6 (pow (* a x) 3)))

rewrite25.0ms

Algorithm
rewrite-expression-head
Rules
19×add-exp-log
14×add-cbrt-cube
11×pow1
10×add-sqr-sqrt
prod-exp
add-cube-cbrt *-un-lft-identity
associate-*r* add-log-exp
cbrt-unprod
associate-*l*
pow-unpow pow-prod-down pow-exp
distribute-rgt-in pow-to-exp associate-+l+ pow-pow distribute-lft-in flip3-+ associate-*r/ *-commutative flip-+ rem-cube-cbrt
+-commutative cube-mult unpow-prod-down unpow3 cube-prod sum-log unswap-sqr sqr-pow
Counts
4 → 76
Calls
4 calls:
2.0ms
(pow (* a x) 3)
7.0ms
(* x (+ a (* (* 1/2 (pow a 2)) x)))
9.0ms
(* (* 1/2 (pow a 2)) x)
5.0ms
(+ (* x (+ a (* (* 1/2 (pow a 2)) x))) (* 1/6 (pow (* a x) 3)))

series49.0ms

Counts
4 → 12
Calls
4 calls:
8.0ms
(pow (* a x) 3)
14.0ms
(* x (+ a (* (* 1/2 (pow a 2)) x)))
6.0ms
(* (* 1/2 (pow a 2)) x)
21.0ms
(+ (* x (+ a (* (* 1/2 (pow a 2)) x))) (* 1/6 (pow (* a x) 3)))

simplify76.0ms

Algorithm
egg-herbie
Counts
88 → 88
Iterations

Useful iterations: 1 (12.0ms)

IterNodesCost
0376525
12297478
25003478

prune558.0ms

Pruning

4 alts after pruning (4 fresh and 0 done)

Merged error: 0.1b

localize11.0ms

Local error

Found 4 expressions with local error:

0.2b
(pow (* a x) 3)
0.2b
(pow (* a x) 2)
4.4b
(+ (* a x) (* 1/2 (pow (* a x) 2)))
13.1b
(+ (+ (* a x) (* 1/2 (pow (* a x) 2))) (* 1/6 (pow (* a x) 3)))

rewrite21.0ms

Algorithm
rewrite-expression-head
Rules
11×add-log-exp
10×pow1 add-exp-log
add-cbrt-cube
add-sqr-sqrt add-cube-cbrt pow-unpow *-un-lft-identity
pow-pow pow-exp sum-log
+-commutative pow-to-exp unpow-prod-down flip3-+ pow-prod-down prod-exp flip-+ rem-cube-cbrt sqr-pow
cube-mult associate-+l+ unpow3 cube-prod cbrt-unprod unpow2
Counts
4 → 64
Calls
4 calls:
2.0ms
(pow (* a x) 3)
2.0ms
(pow (* a x) 2)
3.0ms
(+ (* a x) (* 1/2 (pow (* a x) 2)))
12.0ms
(+ (+ (* a x) (* 1/2 (pow (* a x) 2))) (* 1/6 (pow (* a x) 3)))

series48.0ms

Counts
4 → 12
Calls
4 calls:
8.0ms
(pow (* a x) 3)
5.0ms
(pow (* a x) 2)
14.0ms
(+ (* a x) (* 1/2 (pow (* a x) 2)))
21.0ms
(+ (+ (* a x) (* 1/2 (pow (* a x) 2))) (* 1/6 (pow (* a x) 3)))

simplify64.0ms

Algorithm
egg-herbie
Counts
76 → 76
Iterations

Useful iterations: 1 (10.0ms)

IterNodesCost
0285425
11622392
25002392

prune414.0ms

Pruning

5 alts after pruning (4 fresh and 1 done)

Merged error: 0.1b

regimes476.0ms

Accuracy

98.6% (0.3b remaining)

Error of 0.4b against oracle of 0.1b and baseline of 21.5b

bsearch13.0ms

Steps
ItersRangePoint
8
-0.0010372006076222768
-6.185764844485224e-08
-0.00014477752003782106

simplify1.0ms

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03424
13424

end0.0ms

sample1.4s

Algorithm
intervals
Results
634.0ms2663×body1280valid
217.0ms1326×body640valid
199.0ms5661×body80valid
91.0ms790×body320valid
32.0ms387×body160valid