Details

Time bar (total: 1.0m)

sample604.0ms

Algorithm
intervals
Results
165.0ms115×body1280valid
158.0ms55×body10240exit
154.0ms69×body2560valid
40.0ms43×body640valid
37.0msbody160valid
16.0ms311×pre80true
5.0msbody320valid
3.0ms16×body80valid

simplify264.0ms

Counts
1 → 1
Calls
1 calls:
Slowest
264.0ms
(/ (* eps (- (exp (* (+ a b) eps)) 1)) (* (- (exp (* a eps)) 1) (- (exp (* b eps)) 1)))

prune31.0ms

Pruning

2 alts after pruning (2 fresh and 0 done)

Merged error: 31.9b

localize443.0ms

Local error

Found 4 expressions with local error:

27.8b
(/ (* (expm1 (* (+ a b) eps)) eps) (expm1 (* eps a)))
13.6b
(/ (/ (* (expm1 (* (+ a b) eps)) eps) (expm1 (* eps a))) (expm1 (* eps b)))
0.1b
(* (expm1 (* (+ a b) eps)) eps)
0.0b
(expm1 (* (+ a b) eps))

rewrite53.0ms

Algorithm
rewrite-expression-head
Rules
36×times-frac
26×add-sqr-sqrt
24×*-un-lft-identity add-cube-cbrt
20×add-cbrt-cube add-exp-log
associate-/l*
cbrt-undiv div-exp
pow1 associate-/r* div-inv
log1p-expm1-u
expm1-log1p-u insert-posit16 add-log-exp
associate-*r* associate-*l* prod-exp cbrt-unprod
clear-num frac-2neg
expm1-log1p pow-prod-down *-commutative expm1-udef unswap-sqr associate-/l/
Counts
4 → 108
Calls
4 calls:
Slowest
21.0ms
(/ (/ (* (expm1 (* (+ a b) eps)) eps) (expm1 (* eps a))) (expm1 (* eps b)))
18.0ms
(/ (* (expm1 (* (+ a b) eps)) eps) (expm1 (* eps a)))
12.0ms
(* (expm1 (* (+ a b) eps)) eps)
1.0ms
(expm1 (* (+ a b) eps))

series896.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
588.0ms
(/ (/ (* (expm1 (* (+ a b) eps)) eps) (expm1 (* eps a))) (expm1 (* eps b)))
141.0ms
(/ (* (expm1 (* (+ a b) eps)) eps) (expm1 (* eps a)))
116.0ms
(* (expm1 (* (+ a b) eps)) eps)
51.0ms
(expm1 (* (+ a b) eps))

simplify8.8s

Counts
94 → 120
Calls
94 calls:
Slowest
616.0ms
(/ (/ (* (* (* (expm1 (* (+ a b) eps)) (expm1 (* (+ a b) eps))) (expm1 (* (+ a b) eps))) (* (* eps eps) eps)) (* (* (expm1 (* eps a)) (expm1 (* eps a))) (expm1 (* eps a)))) (* (* (expm1 (* eps b)) (expm1 (* eps b))) (expm1 (* eps b))))
570.0ms
(/ (/ (* (* (* (expm1 (* (+ a b) eps)) eps) (* (expm1 (* (+ a b) eps)) eps)) (* (expm1 (* (+ a b) eps)) eps)) (* (* (expm1 (* eps a)) (expm1 (* eps a))) (expm1 (* eps a)))) (* (* (expm1 (* eps b)) (expm1 (* eps b))) (expm1 (* eps b))))
372.0ms
(/ (* (- (exp (* (+ a b) eps)) 1) eps) (- (exp (* a eps)) 1))
354.0ms
(/ (* (- (exp (* (+ a b) eps)) 1) eps) (- (exp (* a eps)) 1))
327.0ms
(/ (* (- (exp (* (+ a b) eps)) 1) eps) (- (+ (* (exp (* a eps)) (exp (* eps b))) 1) (+ (exp (* eps b)) (exp (* a eps)))))

prune1.4s

Pruning

3 alts after pruning (3 fresh and 0 done)

Merged error: 0b

localize21.0ms

Local error

Found 1 expressions with local error:

0.0b
(+ (/ 1 a) (/ 1 b))

rewrite13.0ms

Algorithm
rewrite-expression-head
Rules
20×*-un-lft-identity
15×times-frac
13×fma-def
10×add-sqr-sqrt add-cube-cbrt
distribute-lft-out
div-inv
add-log-exp
expm1-log1p-u pow1 +-commutative sum-log flip3-+ add-cbrt-cube frac-add add-exp-log flip-+ insert-posit16 log1p-expm1-u
Counts
1 → 35
Calls
1 calls:
Slowest
12.0ms
(+ (/ 1 a) (/ 1 b))

series12.0ms

Counts
1 → 3
Calls
1 calls:
Slowest
12.0ms
(+ (/ 1 a) (/ 1 b))

simplify385.0ms

Counts
27 → 38
Calls
27 calls:
Slowest
55.0ms
(/ (* (cbrt 1) (cbrt 1)) (* (cbrt a) (cbrt a)))
25.0ms
(* (exp (/ 1 a)) (exp (/ 1 b)))
21.0ms
(+ (/ 1 a) (/ 1 b))
18.0ms
(/ (sqrt 1) (* (cbrt a) (cbrt a)))
18.0ms
(+ (/ 1 a) (/ 1 b))

prune335.0ms

Pruning

3 alts after pruning (2 fresh and 1 done)

Merged error: 0b

localize35.0ms

Local error

Found 4 expressions with local error:

27.8b
(/ (* (expm1 (* (+ a b) eps)) eps) (expm1 (* eps a)))
14.1b
(* (/ (* (expm1 (* (+ a b) eps)) eps) (expm1 (* eps a))) (/ 1 (expm1 (* eps b))))
0.2b
(/ 1 (expm1 (* eps b)))
0.1b
(* (expm1 (* (+ a b) eps)) eps)

rewrite58.0ms

Algorithm
rewrite-expression-head
Rules
54×add-exp-log
34×add-sqr-sqrt add-cbrt-cube
26×*-un-lft-identity times-frac
25×add-cube-cbrt
18×div-exp prod-exp
16×associate-*r*
10×cbrt-undiv associate-*l* cbrt-unprod
pow1
associate-/r*
expm1-log1p-u rec-exp 1-exp insert-posit16 log1p-expm1-u div-inv associate-/l* add-log-exp unswap-sqr
clear-num frac-2neg pow-prod-down *-commutative
frac-times associate-*l/ associate-*r/ un-div-inv pow-flip inv-pow
Counts
4 → 136
Calls
4 calls:
Slowest
37.0ms
(* (/ (* (expm1 (* (+ a b) eps)) eps) (expm1 (* eps a))) (/ 1 (expm1 (* eps b))))
9.0ms
(/ (* (expm1 (* (+ a b) eps)) eps) (expm1 (* eps a)))
6.0ms
(* (expm1 (* (+ a b) eps)) eps)
4.0ms
(/ 1 (expm1 (* eps b)))

series925.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
620.0ms
(* (/ (* (expm1 (* (+ a b) eps)) eps) (expm1 (* eps a))) (/ 1 (expm1 (* eps b))))
144.0ms
(/ (* (expm1 (* (+ a b) eps)) eps) (expm1 (* eps a)))
120.0ms
(* (expm1 (* (+ a b) eps)) eps)
41.0ms
(/ 1 (expm1 (* eps b)))

simplify12.8s

Counts
111 → 148
Calls
111 calls:
Slowest
724.0ms
(* (/ (* (* (* (expm1 (* (+ a b) eps)) eps) (* (expm1 (* (+ a b) eps)) eps)) (* (expm1 (* (+ a b) eps)) eps)) (* (* (expm1 (* eps a)) (expm1 (* eps a))) (expm1 (* eps a)))) (/ (* (* 1 1) 1) (* (* (expm1 (* eps b)) (expm1 (* eps b))) (expm1 (* eps b)))))
589.0ms
(* (/ (* (* (* (expm1 (* (+ a b) eps)) (expm1 (* (+ a b) eps))) (expm1 (* (+ a b) eps))) (* (* eps eps) eps)) (* (* (expm1 (* eps a)) (expm1 (* eps a))) (expm1 (* eps a)))) (/ (* (* 1 1) 1) (* (* (expm1 (* eps b)) (expm1 (* eps b))) (expm1 (* eps b)))))
568.0ms
(* (/ (* (* (* (expm1 (* (+ a b) eps)) eps) (* (expm1 (* (+ a b) eps)) eps)) (* (expm1 (* (+ a b) eps)) eps)) (* (* (expm1 (* eps a)) (expm1 (* eps a))) (expm1 (* eps a)))) (* (* (/ 1 (expm1 (* eps b))) (/ 1 (expm1 (* eps b)))) (/ 1 (expm1 (* eps b)))))
484.0ms
(+ (- (log (* (expm1 (* (+ a b) eps)) eps)) (log (expm1 (* eps a)))) (log (/ 1 (expm1 (* eps b)))))
455.0ms
(+ (- (+ (log (expm1 (* (+ a b) eps))) (log eps)) (log (expm1 (* eps a)))) (- 0 (log (expm1 (* eps b)))))

prune2.0s

Pruning

3 alts after pruning (1 fresh and 2 done)

Merged error: 0b

localize69.0ms

Local error

Found 4 expressions with local error:

35.8b
(cbrt (* (/ (/ (expm1 (* (+ b a) eps)) (/ (expm1 (* eps a)) eps)) (expm1 (* eps b))) (* (/ (/ (expm1 (* (+ b a) eps)) (/ (expm1 (* eps a)) eps)) (expm1 (* eps b))) (/ (/ (expm1 (* (+ b a) eps)) (/ (expm1 (* eps a)) eps)) (expm1 (* eps b))))))
14.5b
(/ (expm1 (* eps a)) eps)
14.5b
(/ (expm1 (* eps a)) eps)
14.5b
(/ (expm1 (* eps a)) eps)

rewrite97.0ms

Algorithm
rewrite-expression-head
Rules
28×add-sqr-sqrt *-un-lft-identity add-cube-cbrt
27×times-frac
10×add-cbrt-cube add-exp-log
associate-/r* associate-/l*
cbrt-div
frac-times associate-*r/
expm1-log1p-u pow1 insert-posit16 log1p-expm1-u add-log-exp
cbrt-undiv clear-num frac-2neg div-sub div-exp associate-*l/ div-inv expm1-udef
cbrt-prod pow1/3 cube-unmult rem-cbrt-cube
Counts
4 → 113
Calls
4 calls:
Slowest
84.0ms
(cbrt (* (/ (/ (expm1 (* (+ b a) eps)) (/ (expm1 (* eps a)) eps)) (expm1 (* eps b))) (* (/ (/ (expm1 (* (+ b a) eps)) (/ (expm1 (* eps a)) eps)) (expm1 (* eps b))) (/ (/ (expm1 (* (+ b a) eps)) (/ (expm1 (* eps a)) eps)) (expm1 (* eps b))))))
4.0ms
(/ (expm1 (* eps a)) eps)
4.0ms
(/ (expm1 (* eps a)) eps)
4.0ms
(/ (expm1 (* eps a)) eps)

series789.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
653.0ms
(cbrt (* (/ (/ (expm1 (* (+ b a) eps)) (/ (expm1 (* eps a)) eps)) (expm1 (* eps b))) (* (/ (/ (expm1 (* (+ b a) eps)) (/ (expm1 (* eps a)) eps)) (expm1 (* eps b))) (/ (/ (expm1 (* (+ b a) eps)) (/ (expm1 (* eps a)) eps)) (expm1 (* eps b))))))
46.0ms
(/ (expm1 (* eps a)) eps)
45.0ms
(/ (expm1 (* eps a)) eps)
44.0ms
(/ (expm1 (* eps a)) eps)

simplify9.4s

Counts
96 → 125
Calls
96 calls:
Slowest
906.0ms
(cbrt (* (/ (expm1 (* (+ b a) eps)) (/ (expm1 (* eps a)) eps)) (* (/ (/ (expm1 (* (+ b a) eps)) (/ (expm1 (* eps a)) eps)) (expm1 (* eps b))) (/ (expm1 (* (+ b a) eps)) (/ (expm1 (* eps a)) eps)))))
845.0ms
(cbrt (* (/ (expm1 (* (+ b a) eps)) (/ (expm1 (* eps a)) eps)) (* (/ (/ (expm1 (* (+ b a) eps)) (/ (expm1 (* eps a)) eps)) (expm1 (* eps b))) (/ (/ (expm1 (* (+ b a) eps)) (/ (expm1 (* eps a)) eps)) (expm1 (* eps b))))))
795.0ms
(cbrt (* (/ (/ (expm1 (* (+ b a) eps)) (/ (expm1 (* eps a)) eps)) (expm1 (* eps b))) (* (/ (expm1 (* (+ b a) eps)) (/ (expm1 (* eps a)) eps)) (/ (expm1 (* (+ b a) eps)) (/ (expm1 (* eps a)) eps)))))
603.0ms
(/ (- (exp (* a eps)) 1) eps)
528.0ms
(* -1 (/ (- 1 (exp (* a eps))) eps))

prune1.9s

Pruning

3 alts after pruning (0 fresh and 3 done)

Merged error: 0b

regimes128.0ms

Accuracy

-0.7% (3.3b remaining)

Error of 3.3b against oracle of 0.0b and baseline of 3.3b

bsearch449.0ms

end0.0ms

sample20.6s

Algorithm
intervals
Results
6.7s2523×body2560valid
6.1s3457×body1280valid
4.8s2081×body10240exit
1.2s1090×body640valid
569.0ms10081×pre80true
463.0ms132×body160valid
251.0ms356×body320valid
142.0ms442×body80valid