Details

Time bar (total: 19.5s)

sample90.0ms

Algorithm
halfpoints

simplify1.3s

Counts
1 → 1
Iterations
IterNodes
done2002
72002
61308
5586
4220
3107
249
120
011

prune34.0ms

Pruning

2 alts after pruning (2 fresh and 0 done)

Merged error: 0.1b

localize241.0ms

Local error

Found 4 expressions with local error:

0.2b
(+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re))
0.2b
(*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.im)
0.2b
(+.p16 (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.im) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re))
0.3b
(-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im))

rewrite28.0ms

Algorithm
rewrite-expression-head
Rules
10×+p16-lft-identity-expand introduce-quire -p16-rgt-identity-expand +p16-rgt-identity-expand
*p16-lft-identity-expand /p16-rgt-identity-expand *p16-rgt-identity-expand p16-*-un-lft-identity
associate-+l+ associate-+r+ associate-*l*
+-commutative associate-+r- insert-quire-add associate-*l/ associate--l+ p16-flip-- insert-quire-fdp-add associate-+l- associate--r+ difference-of-squares
associate--l- insert-quire-sub sub-neg *-commutative insert-quire-fdp-sub associate--r-
Counts
4 → 68
Calls
4 calls:
7.0ms
(+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re))
6.0ms
(*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.im)
7.0ms
(+.p16 (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.im) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re))
7.0ms
(-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im))

series0.0ms

Counts
4 → 4
Calls
4 calls:
0.0ms
(+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re))
0.0ms
(*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.im)
0.0ms
(+.p16 (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.im) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re))
0.0ms
(-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im))

simplify1.1s

Counts
72 → 72
Iterations
IterNodes
done2028
42028
31021
2224
184
046

prune1.7s

Pruning

5 alts after pruning (5 fresh and 0 done)

Merged error: 0.1b

localize267.0ms

Local error

Found 4 expressions with local error:

0.1b
(*.p16 (+.p16 x.im x.im) x.re)
0.1b
(*.p16 (+.p16 x.im x.re) x.im)
0.2b
(*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))
9.5b
(quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (*.p16 (+.p16 x.im x.im) x.re) x.re)

rewrite13.0ms

Algorithm
rewrite-expression-head
Rules
associate-*l*
/p16-rgt-identity-expand
*p16-lft-identity-expand *p16-rgt-identity-expand p16-*-un-lft-identity
+p16-lft-identity-expand associate-*l/ +p16-rgt-identity-expand
introduce-quire -p16-rgt-identity-expand *-commutative
distribute-rgt-in distribute-lft-in associate-*r/
associate-*r* p16-flip--
Counts
4 → 47
Calls
4 calls:
3.0ms
(*.p16 (+.p16 x.im x.im) x.re)
3.0ms
(*.p16 (+.p16 x.im x.re) x.im)
5.0ms
(*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))
0.0ms
(quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (*.p16 (+.p16 x.im x.im) x.re) x.re)

series0.0ms

Counts
4 → 4
Calls
4 calls:
0.0ms
(*.p16 (+.p16 x.im x.im) x.re)
0.0ms
(*.p16 (+.p16 x.im x.re) x.im)
0.0ms
(*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))
0.0ms
(quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (*.p16 (+.p16 x.im x.im) x.re) x.re)

simplify872.0ms

Counts
51 → 51
Iterations
IterNodes
done2016
42016
3688
2167
161
028

prune2.0s

Pruning

6 alts after pruning (5 fresh and 1 done)

Merged error: 0.1b

localize420.0ms

Local error

Found 4 expressions with local error:

0.1b
(*.p16 (+.p16 x.im x.re) x.im)
0.2b
(*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))
0.3b
(*.p16 (*.p16 x.re x.re) (+.p16 x.im x.im))
9.6b
(quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (*.p16 (*.p16 x.re x.re) (+.p16 x.im x.im)) (real->posit16 1.0))

rewrite29.0ms

Algorithm
rewrite-expression-head
Rules
/p16-rgt-identity-expand
associate-*l*
*p16-lft-identity-expand *p16-rgt-identity-expand p16-*-un-lft-identity
+p16-lft-identity-expand associate-*l/ +p16-rgt-identity-expand
associate-*r*
distribute-rgt-in distribute-lft-in introduce-quire -p16-rgt-identity-expand associate-*r/ *-commutative
p16-flip--
Counts
4 → 51
Calls
4 calls:
6.0ms
(*.p16 (+.p16 x.im x.re) x.im)
12.0ms
(*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))
10.0ms
(*.p16 (*.p16 x.re x.re) (+.p16 x.im x.im))
1.0ms
(quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (*.p16 (*.p16 x.re x.re) (+.p16 x.im x.im)) (real->posit16 1.0))

series0.0ms

Counts
4 → 4
Calls
4 calls:
0.0ms
(*.p16 (+.p16 x.im x.re) x.im)
0.0ms
(*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))
0.0ms
(*.p16 (*.p16 x.re x.re) (+.p16 x.im x.im))
0.0ms
(quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (*.p16 (*.p16 x.re x.re) (+.p16 x.im x.im)) (real->posit16 1.0))

simplify1.5s

Counts
55 → 55
Iterations
IterNodes
done2108
42108
31544
2253
177
031

prune2.7s

Pruning

6 alts after pruning (5 fresh and 1 done)

Merged error: 0.1b

localize343.0ms

Local error

Found 4 expressions with local error:

0.2b
(+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re))
0.2b
(*.p16 (quire16->posit16 (quire16-mul-sub (posit16->quire16 (*.p16 x.re x.re)) x.im x.im)) x.im)
0.2b
(+.p16 (*.p16 (quire16->posit16 (quire16-mul-sub (posit16->quire16 (*.p16 x.re x.re)) x.im x.im)) x.im) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re))
6.2b
(quire16-mul-sub (posit16->quire16 (*.p16 x.re x.re)) x.im x.im)

rewrite18.0ms

Algorithm
rewrite-expression-head
Rules
+p16-lft-identity-expand introduce-quire -p16-rgt-identity-expand +p16-rgt-identity-expand
associate-+l+ associate-+r+ *p16-lft-identity-expand /p16-rgt-identity-expand *p16-rgt-identity-expand p16-*-un-lft-identity
associate-*l*
+-commutative associate-+r- insert-quire-add insert-quire-fdp-add associate-+l-
associate-*l/ *-commutative
Counts
4 → 47
Calls
4 calls:
5.0ms
(+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re))
4.0ms
(*.p16 (quire16->posit16 (quire16-mul-sub (posit16->quire16 (*.p16 x.re x.re)) x.im x.im)) x.im)
7.0ms
(+.p16 (*.p16 (quire16->posit16 (quire16-mul-sub (posit16->quire16 (*.p16 x.re x.re)) x.im x.im)) x.im) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re))
0.0ms
(quire16-mul-sub (posit16->quire16 (*.p16 x.re x.re)) x.im x.im)

series0.0ms

Counts
4 → 4
Calls
4 calls:
0.0ms
(+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re))
0.0ms
(*.p16 (quire16->posit16 (quire16-mul-sub (posit16->quire16 (*.p16 x.re x.re)) x.im x.im)) x.im)
0.0ms
(+.p16 (*.p16 (quire16->posit16 (quire16-mul-sub (posit16->quire16 (*.p16 x.re x.re)) x.im x.im)) x.im) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re))
0.0ms
(quire16-mul-sub (posit16->quire16 (*.p16 x.re x.re)) x.im x.im)

simplify1.4s

Counts
51 → 51
Iterations
IterNodes
done2044
52044
4855
3232
284
144
031

prune2.0s

Pruning

7 alts after pruning (5 fresh and 2 done)

Merged error: 0.0b

regimes344.0ms

Accuracy

0% (0.2b remaining)

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

bsearch0.0ms

simplify1.0ms

Iterations
IterNodes
done11
011

end0.0ms

sample3.2s

Algorithm
halfpoints