Details

Time bar (total: 55.8s)

sample168.0ms

Algorithm
halfpoints

simplify2.5s

Counts
1 → 1
Iterations
IterNodes
done5008
31886
2493
1133
046

prune39.0ms

Pruning

2 alts after pruning (2 fresh and 0 done)

Merged error: 4.4b

localize667.0ms

Local error

Found 4 expressions with local error:

1.7b
(*.p16 #<cpointer:posit16> (*.p16 (*.p16 (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)))
2.1b
(*.p16 (*.p16 #<cpointer:posit16> #<cpointer:posit16>) (*.p16 (*.p16 (*.p16 (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)))
2.1b
(*.p16 #<cpointer:posit16> (*.p16 (*.p16 (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)))
3.4b
(/.p16 (+.p16 (+.p16 (+.p16 (+.p16 (+.p16 #<cpointer:posit16> (*.p16 #<cpointer:posit16> (*.p16 x x))) (*.p16 #<cpointer:posit16> (*.p16 (*.p16 x x) (*.p16 x x)))) (*.p16 #<cpointer:posit16> (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) (*.p16 x x)))) (*.p16 #<cpointer:posit16> (*.p16 (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)))) (*.p16 #<cpointer:posit16> (*.p16 (*.p16 (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)))) (+.p16 (+.p16 (+.p16 (+.p16 (+.p16 (+.p16 #<cpointer:posit16> (*.p16 #<cpointer:posit16> (*.p16 x x))) (*.p16 #<cpointer:posit16> (*.p16 (*.p16 x x) (*.p16 x x)))) (*.p16 #<cpointer:posit16> (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) (*.p16 x x)))) (*.p16 #<cpointer:posit16> (*.p16 (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)))) (*.p16 #<cpointer:posit16> (*.p16 (*.p16 (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)))) (*.p16 (*.p16 #<cpointer:posit16> #<cpointer:posit16>) (*.p16 (*.p16 (*.p16 (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)))))

rewrite19.2s

Algorithm
rewrite-expression-head
Rules
63×associate-*l/
43×associate-*r/
40×/p16-rgt-identity-expand
30×distribute-rgt-in distribute-lft-in
22×+p16-lft-identity-expand +p16-rgt-identity-expand
14×*p16-lft-identity-expand *p16-rgt-identity-expand p16-*-un-lft-identity
p16-times-frac
associate-*l*
introduce-quire -p16-rgt-identity-expand
associate-/r* associate-*r* *-commutative associate-/l*
associate-/r/ associate-/l/
Counts
4 → 132
Calls
4 calls:
98.0ms
(*.p16 #<cpointer:posit16> (*.p16 (*.p16 (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)))
135.0ms
(*.p16 (*.p16 #<cpointer:posit16> #<cpointer:posit16>) (*.p16 (*.p16 (*.p16 (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)))
99.0ms
(*.p16 #<cpointer:posit16> (*.p16 (*.p16 (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)))
18.8s
(/.p16 (+.p16 (+.p16 (+.p16 (+.p16 (+.p16 #<cpointer:posit16> (*.p16 #<cpointer:posit16> (*.p16 x x))) (*.p16 #<cpointer:posit16> (*.p16 (*.p16 x x) (*.p16 x x)))) (*.p16 #<cpointer:posit16> (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) (*.p16 x x)))) (*.p16 #<cpointer:posit16> (*.p16 (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)))) (*.p16 #<cpointer:posit16> (*.p16 (*.p16 (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)))) (+.p16 (+.p16 (+.p16 (+.p16 (+.p16 (+.p16 #<cpointer:posit16> (*.p16 #<cpointer:posit16> (*.p16 x x))) (*.p16 #<cpointer:posit16> (*.p16 (*.p16 x x) (*.p16 x x)))) (*.p16 #<cpointer:posit16> (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) (*.p16 x x)))) (*.p16 #<cpointer:posit16> (*.p16 (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)))) (*.p16 #<cpointer:posit16> (*.p16 (*.p16 (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)))) (*.p16 (*.p16 #<cpointer:posit16> #<cpointer:posit16>) (*.p16 (*.p16 (*.p16 (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)))))

series1.0ms

Counts
4 → 4
Calls
4 calls:
0.0ms
(*.p16 #<cpointer:posit16> (*.p16 (*.p16 (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)))
0.0ms
(*.p16 (*.p16 #<cpointer:posit16> #<cpointer:posit16>) (*.p16 (*.p16 (*.p16 (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)))
0.0ms
(*.p16 #<cpointer:posit16> (*.p16 (*.p16 (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)))
1.0ms
(/.p16 (+.p16 (+.p16 (+.p16 (+.p16 (+.p16 #<cpointer:posit16> (*.p16 #<cpointer:posit16> (*.p16 x x))) (*.p16 #<cpointer:posit16> (*.p16 (*.p16 x x) (*.p16 x x)))) (*.p16 #<cpointer:posit16> (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) (*.p16 x x)))) (*.p16 #<cpointer:posit16> (*.p16 (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)))) (*.p16 #<cpointer:posit16> (*.p16 (*.p16 (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)))) (+.p16 (+.p16 (+.p16 (+.p16 (+.p16 (+.p16 #<cpointer:posit16> (*.p16 #<cpointer:posit16> (*.p16 x x))) (*.p16 #<cpointer:posit16> (*.p16 (*.p16 x x) (*.p16 x x)))) (*.p16 #<cpointer:posit16> (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) (*.p16 x x)))) (*.p16 #<cpointer:posit16> (*.p16 (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)))) (*.p16 #<cpointer:posit16> (*.p16 (*.p16 (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)))) (*.p16 (*.p16 #<cpointer:posit16> #<cpointer:posit16>) (*.p16 (*.p16 (*.p16 (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)))))

simplify5.0s

Counts
136 → 136
Iterations
IterNodes
done5012
21082
1287
098

prune1.1s

Pruning

6 alts after pruning (6 fresh and 0 done)

Merged error: 3.3b

localize649.0ms

Local error

Found 4 expressions with local error:

0.9b
(*.p16 #<cpointer:posit16> (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) (*.p16 x x)))
1.7b
(*.p16 #<cpointer:posit16> (*.p16 (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)))
2.1b
(*.p16 #<cpointer:posit16> (*.p16 (*.p16 (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)))
3.4b
(/.p16 (+.p16 (+.p16 (+.p16 (+.p16 (+.p16 #<cpointer:posit16> (*.p16 #<cpointer:posit16> (*.p16 x x))) (*.p16 #<cpointer:posit16> (*.p16 (*.p16 x x) (*.p16 x x)))) (*.p16 #<cpointer:posit16> (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) (*.p16 x x)))) (*.p16 #<cpointer:posit16> (*.p16 (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)))) (*.p16 #<cpointer:posit16> (*.p16 (*.p16 (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)))) (+.p16 (+.p16 (*.p16 (*.p16 (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) (*.p16 x x)) (*.p16 (*.p16 x x) (*.p16 x x))) (+.p16 #<cpointer:posit16> (*.p16 #<cpointer:posit16> (*.p16 #<cpointer:posit16> (*.p16 x x))))) #<cpointer:posit16>) (*.p16 (*.p16 x x) (+.p16 (+.p16 #<cpointer:posit16> (*.p16 (*.p16 x x) #<cpointer:posit16>)) (+.p16 (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) #<cpointer:posit16>) (*.p16 (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) (*.p16 x x)) #<cpointer:posit16>))))))

rewrite3.7s

Algorithm
rewrite-expression-head
Rules
32×associate-*l/
30×distribute-rgt-in distribute-lft-in associate-*r/ /p16-rgt-identity-expand
22×+p16-lft-identity-expand +p16-rgt-identity-expand
15×*p16-lft-identity-expand *p16-rgt-identity-expand p16-*-un-lft-identity
p16-times-frac associate-*l*
introduce-quire -p16-rgt-identity-expand
associate-/r* associate-*r* *-commutative associate-/l*
associate-/r/ associate-/l/
Counts
4 → 124
Calls
4 calls:
29.0ms
(*.p16 #<cpointer:posit16> (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) (*.p16 x x)))
43.0ms
(*.p16 #<cpointer:posit16> (*.p16 (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)))
60.0ms
(*.p16 #<cpointer:posit16> (*.p16 (*.p16 (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)))
3.5s
(/.p16 (+.p16 (+.p16 (+.p16 (+.p16 (+.p16 #<cpointer:posit16> (*.p16 #<cpointer:posit16> (*.p16 x x))) (*.p16 #<cpointer:posit16> (*.p16 (*.p16 x x) (*.p16 x x)))) (*.p16 #<cpointer:posit16> (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) (*.p16 x x)))) (*.p16 #<cpointer:posit16> (*.p16 (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)))) (*.p16 #<cpointer:posit16> (*.p16 (*.p16 (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)))) (+.p16 (+.p16 (*.p16 (*.p16 (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) (*.p16 x x)) (*.p16 (*.p16 x x) (*.p16 x x))) (+.p16 #<cpointer:posit16> (*.p16 #<cpointer:posit16> (*.p16 #<cpointer:posit16> (*.p16 x x))))) #<cpointer:posit16>) (*.p16 (*.p16 x x) (+.p16 (+.p16 #<cpointer:posit16> (*.p16 (*.p16 x x) #<cpointer:posit16>)) (+.p16 (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) #<cpointer:posit16>) (*.p16 (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) (*.p16 x x)) #<cpointer:posit16>))))))

series1.0ms

Counts
4 → 4
Calls
4 calls:
0.0ms
(*.p16 #<cpointer:posit16> (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) (*.p16 x x)))
0.0ms
(*.p16 #<cpointer:posit16> (*.p16 (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)))
0.0ms
(*.p16 #<cpointer:posit16> (*.p16 (*.p16 (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)))
0.0ms
(/.p16 (+.p16 (+.p16 (+.p16 (+.p16 (+.p16 #<cpointer:posit16> (*.p16 #<cpointer:posit16> (*.p16 x x))) (*.p16 #<cpointer:posit16> (*.p16 (*.p16 x x) (*.p16 x x)))) (*.p16 #<cpointer:posit16> (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) (*.p16 x x)))) (*.p16 #<cpointer:posit16> (*.p16 (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)))) (*.p16 #<cpointer:posit16> (*.p16 (*.p16 (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)) (*.p16 x x)))) (+.p16 (+.p16 (*.p16 (*.p16 (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) (*.p16 x x)) (*.p16 (*.p16 x x) (*.p16 x x))) (+.p16 #<cpointer:posit16> (*.p16 #<cpointer:posit16> (*.p16 #<cpointer:posit16> (*.p16 x x))))) #<cpointer:posit16>) (*.p16 (*.p16 x x) (+.p16 (+.p16 #<cpointer:posit16> (*.p16 (*.p16 x x) #<cpointer:posit16>)) (+.p16 (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) #<cpointer:posit16>) (*.p16 (*.p16 (*.p16 (*.p16 x x) (*.p16 x x)) (*.p16 x x)) #<cpointer:posit16>))))))

simplify22.8s

Counts
128 → 128
Iterations
IterNodes
done5001
21304
1292
0102

prune13.0ms