rat: fix `copy`
The copy
function does not obey the new ids:
In [10]: f.info('type')
Out[10]: 'seriesset<letterset<char_letters(ab)>, b>'
In [11]: e = vcsn.B.expression('a(a+b)'); e
Out[11]: a(a+b)
In [12]: f = e.expression(e.context(), 'distributive'); f
Out[12]: a(a+b)
In [13]: f.info('type')
Out[13]: 'seriesset<letterset<char_letters(ab)>, b>'
We expect aa+ab
, of course.
So we should fix copy
to really rewrite the expression using the new expressionset. If you be noted that it becomes a lot like inductive
! Maybe there is some factoring to use here.