Details

Time bar (total: 22.8s)

sample29.0ms

Algorithm
intervals
Results
7.0ms188×body80valid
4.0ms27×body640valid
2.0ms19×body320valid
1.0ms10×body1280valid
1.0ms12×body160valid

simplify10.5s

Counts
1 → 1
Iterations

Useful iterations: 4 (59.0ms)

IterNodesCost
0811
11611
23511
37611
413110
524210
630910
737410
842410
951310
1058210
1159110
1261010
1364810
1477710
1591510
16123310
17168910
18227010
19243610
20244210
done244210

prune18.0ms

Pruning

2 alts after pruning (2 fresh and 0 done)

Merged error: 15.6b

localize15.0ms

Local error

Found 2 expressions with local error:

0.0b
(/ (- x 1.0) (+ y 1.0))
15.9b
(fma (/ (- x 1.0) (+ y 1.0)) y 1.0)

rewrite33.0ms

Algorithm
rewrite-expression-head
Rules
35×*-un-lft-identity
23×add-sqr-sqrt
20×times-frac
13×add-cube-cbrt
distribute-lft-out
associate-/l* distribute-lft-out-- difference-of-squares
add-exp-log associate-/r* add-cbrt-cube
pow1 expm1-log1p-u associate-/r/ log1p-expm1-u associate-/l/ add-log-exp
cbrt-undiv flip3-- frac-2neg flip3-+ div-sub div-exp clear-num flip-- flip-+ fma-udef div-inv
Counts
2 → 58
Calls
2 calls:
30.0ms
(/ (- x 1.0) (+ y 1.0))
1.0ms
(fma (/ (- x 1.0) (+ y 1.0)) y 1.0)

series136.0ms

Counts
2 → 6
Calls
2 calls:
52.0ms
(/ (- x 1.0) (+ y 1.0))
83.0ms
(fma (/ (- x 1.0) (+ y 1.0)) y 1.0)

simplify2.1s

Counts
64 → 64
Iterations

Useful iterations: done (2.1s)

IterNodesCost
0114834
1277799
2718745
31747739
done5000737

prune219.0ms

Pruning

4 alts after pruning (4 fresh and 0 done)

Merged error: 0.1b

localize13.0ms

Local error

Found 4 expressions with local error:

0.0b
(/ 1.0 (+ y 1.0))
0.0b
(/ x (+ y 1.0))
0.0b
(- (/ x (+ y 1.0)) (/ 1.0 (+ y 1.0)))
15.9b
(fma (- (/ x (+ y 1.0)) (/ 1.0 (+ y 1.0))) y 1.0)

rewrite261.0ms

Algorithm
rewrite-expression-head
Rules
582×*-un-lft-identity
484×times-frac
332×add-sqr-sqrt
324×prod-diff
320×add-cube-cbrt
123×distribute-lft-out
82×associate-/r/
41×flip3-+ flip-+ div-inv
18×fma-neg
add-exp-log associate-/r* add-cbrt-cube
distribute-lft-out--
associate-/l* add-log-exp
pow1 expm1-log1p-u log1p-expm1-u difference-of-squares
distribute-rgt-out--
cbrt-undiv frac-2neg div-exp clear-num
sub-neg flip3-- diff-log frac-sub flip-- fma-udef sub-div
Counts
4 → 452
Calls
4 calls:
16.0ms
(/ 1.0 (+ y 1.0))
22.0ms
(/ x (+ y 1.0))
176.0ms
(- (/ x (+ y 1.0)) (/ 1.0 (+ y 1.0)))
0.0ms
(fma (- (/ x (+ y 1.0)) (/ 1.0 (+ y 1.0))) y 1.0)

series224.0ms

Counts
4 → 12
Calls
4 calls:
33.0ms
(/ 1.0 (+ y 1.0))
41.0ms
(/ x (+ y 1.0))
50.0ms
(- (/ x (+ y 1.0)) (/ 1.0 (+ y 1.0)))
100.0ms
(fma (- (/ x (+ y 1.0)) (/ 1.0 (+ y 1.0))) y 1.0)

simplify2.4s

Counts
464 → 464
Iterations

Useful iterations: done (2.3s)

IterNodesCost
047120743
1105418233
2239313844
done500010461

prune687.0ms

Pruning

4 alts after pruning (3 fresh and 1 done)

Merged error: 0.1b

localize11.0ms

Local error

Found 4 expressions with local error:

0.0b
(/ 1 (+ y 1.0))
0.1b
(* (/ 1 (+ y 1.0)) (- x 1.0))
0.1b
(* (* (/ 1 (+ y 1.0)) (- x 1.0)) y)
4.5b
(+ (* (* (/ 1 (+ y 1.0)) (- x 1.0)) y) 1.0)

rewrite206.0ms

Algorithm
rewrite-expression-head
Rules
52×*-un-lft-identity
44×add-sqr-sqrt
35×add-cube-cbrt
32×add-exp-log
26×times-frac
20×add-cbrt-cube
19×associate-*l*
18×prod-diff
13×prod-exp
12×pow1
11×distribute-rgt-in distribute-lft-in
associate-*r*
associate-*l/ cbrt-unprod distribute-lft-out
div-exp add-log-exp
expm1-log1p-u frac-times flip3-- associate-*r/ pow-prod-down associate-/r* associate-/r/ flip-- log1p-expm1-u
cbrt-undiv rec-exp flip3-+ 1-exp flip-+ associate-/l* unswap-sqr
sub-neg *-commutative div-inv
+-commutative pow-flip fma-def frac-2neg clear-num sum-log distribute-lft-out-- inv-pow difference-of-squares
Counts
4 → 152
Calls
4 calls:
12.0ms
(/ 1 (+ y 1.0))
50.0ms
(* (/ 1 (+ y 1.0)) (- x 1.0))
68.0ms
(* (* (/ 1 (+ y 1.0)) (- x 1.0)) y)
69.0ms
(+ (* (* (/ 1 (+ y 1.0)) (- x 1.0)) y) 1.0)

series251.0ms

Counts
4 → 12
Calls
4 calls:
36.0ms
(/ 1 (+ y 1.0))
41.0ms
(* (/ 1 (+ y 1.0)) (- x 1.0))
51.0ms
(* (* (/ 1 (+ y 1.0)) (- x 1.0)) y)
123.0ms
(+ (* (* (/ 1 (+ y 1.0)) (- x 1.0)) y) 1.0)

simplify1.8s

Counts
164 → 164
Iterations

Useful iterations: done (1.8s)

IterNodesCost
02602533
16482014
218951686
done50001644

prune285.0ms

Pruning

4 alts after pruning (2 fresh and 2 done)

Merged error: 0.1b

localize7.0ms

Local error

Found 2 expressions with local error:

0.0b
(+ x (* (/ 1.0 y) (- 1 x)))
0.1b
(* (/ 1.0 y) (- 1 x))

rewrite56.0ms

Algorithm
rewrite-expression-head
Rules
43×add-sqr-sqrt
38×*-un-lft-identity
36×prod-diff
35×add-cube-cbrt
22×distribute-rgt-in associate-+r+ distribute-lft-in
13×associate-*l*
10×times-frac
add-exp-log add-cbrt-cube
associate-*r*
pow1 sub-neg add-log-exp
fma-def
expm1-log1p-u frac-times flip3-- associate-*r/ prod-exp flip-- cbrt-unprod log1p-expm1-u difference-of-squares unswap-sqr
cbrt-undiv +-commutative flip3-+ div-exp pow-prod-down associate-*l/ sum-log *-commutative flip-+ div-inv distribute-lft-out--
Counts
2 → 101
Calls
2 calls:
11.0ms
(+ x (* (/ 1.0 y) (- 1 x)))
40.0ms
(* (/ 1.0 y) (- 1 x))

series84.0ms

Counts
2 → 6
Calls
2 calls:
39.0ms
(+ x (* (/ 1.0 y) (- 1 x)))
45.0ms
(* (/ 1.0 y) (- 1 x))

simplify1.6s

Counts
107 → 107
Iterations

Useful iterations: done (1.6s)

IterNodesCost
01891649
14571210
212931033
done50001029

prune189.0ms

Pruning

6 alts after pruning (4 fresh and 2 done)

Merged error: 0.1b

regimes151.0ms

Accuracy

98.7% (0.2b remaining)

Error of 0.3b against oracle of 0.1b and baseline of 14.7b

bsearch115.0ms

Steps
ItersRangePoint
9
20796729.49276672
3744461241692.0635
150550976.72319537
6
-433630756157860.06
-60439154737701.01
-61215075097455.13

simplify5.0ms

Iterations

Useful iterations: 1 (3.0ms)

IterNodesCost
02462
13343
done3343

end0.0ms

sample1.4s

Algorithm
intervals
Results
724.0ms6059×body80valid
158.0ms724×body640valid
104.0ms362×body1280valid
67.0ms554×body320valid
27.0ms301×body160valid