theorem
Regex.NFA.Path.eq_or_path_next
{nfa : NFA}
{next : ℕ}
{e : Data.Expr}
{result : NFA}
{lb i : ℕ}
{it : String.Iterator}
{j : ℕ}
{it' : String.Iterator}
{update : List (ℕ × String.Pos)}
(eq : nfa.pushRegex next e = result)
(jlt : j < nfa.nodes.size)
(ige : i ≥ nfa.nodes.size)
(path : result.Path lb i it j it' update)
:
theorem
Regex.NFA.Path.path_next_of_ne
{nfa : NFA}
{next : ℕ}
{e : Data.Expr}
{result : NFA}
{lb i : ℕ}
{it : String.Iterator}
{j : ℕ}
{it' : String.Iterator}
{update : List (ℕ × String.Pos)}
(eq : nfa.pushRegex next e = result)
(jlt : j < nfa.nodes.size)
(ige : i ≥ nfa.nodes.size)
(ne : j ≠ next)
(path : result.Path lb i it j it' update)
: