public bool IsTrueForAllStates(Func<Expr, bool> phi)
{
if (!phi(state))
return false;
else
{
for (int i = 0; i < Rank; i++)
foreach (var q in lookahead[i])
if (!phi(q))
return false;
if (output == null)
return true;
else
return CheckForAllStates(output, phi);
}
}