lightest: why do we loop?
We loop forever on the following automaton when calling lightest.
# In[1]:
import vcsn
ctx = vcsn.context('lat<lan, lan>, zmin')
ctx
# In[2]:
e = ctx.expression(r'(<0>(a|a+b|b))* (<1>[^]|\e + <1>\e|[^] + <2>(a|[^a]+b|[^b])){+}')
e
# In[3]:
a = e.automaton()
a
# In[4]:
a.shortest(10)
I'm pretty sure this test case can be reduced on a single tape case, I just don't have time now.