Instances
def
Regex.NFA.Compile.ProofData.Empty.intro
{nfa : NFA}
{next : Nat}
{result : NFA}
:
nfa.pushRegex next Data.Expr.empty = result → Empty
Equations
- Regex.NFA.Compile.ProofData.Empty.intro x✝ = { nfa := nfa, next := next, e := Regex.Data.Expr.empty, expr_eq := ⋯ }
Instances For
Equations
- Regex.NFA.Compile.ProofData.Empty.intro' nfa next = { nfa := nfa, next := next, e := Regex.Data.Expr.empty, expr_eq := ⋯ }
Instances For
Instances
def
Regex.NFA.Compile.ProofData.Epsilon.intro
{nfa : NFA}
{next : Nat}
{result : NFA}
:
nfa.pushRegex next Data.Expr.epsilon = result → Epsilon
Equations
- Regex.NFA.Compile.ProofData.Epsilon.intro x✝ = { nfa := nfa, next := next, e := Regex.Data.Expr.epsilon, expr_eq := ⋯ }
Instances For
Equations
- Regex.NFA.Compile.ProofData.Epsilon.intro' nfa next = { nfa := nfa, next := next, e := Regex.Data.Expr.epsilon, expr_eq := ⋯ }
Instances For
- anchor : Data.Anchor
Instances
def
Regex.NFA.Compile.ProofData.Anchor.intro
{nfa : NFA}
{next : Nat}
{anchor : Data.Anchor}
{result : NFA}
:
nfa.pushRegex next (Data.Expr.anchor anchor) = result → Anchor
Equations
- Regex.NFA.Compile.ProofData.Anchor.intro x✝ = { nfa := nfa, next := next, e := Regex.Data.Expr.anchor anchor, anchor := anchor, expr_eq := ⋯ }
Instances For
Equations
- Regex.NFA.Compile.ProofData.Anchor.intro' nfa next anchor = { nfa := nfa, next := next, e := Regex.Data.Expr.anchor anchor, anchor := anchor, expr_eq := ⋯ }
Instances For
- c : _root_.Char
Instances
def
Regex.NFA.Compile.ProofData.Char.intro
{nfa : NFA}
{next : Nat}
{c : _root_.Char}
{result : NFA}
:
nfa.pushRegex next (Data.Expr.char c) = result → Char
Equations
- Regex.NFA.Compile.ProofData.Char.intro x✝ = { nfa := nfa, next := next, e := Regex.Data.Expr.char c, c := c, expr_eq := ⋯ }
Instances For
Equations
- Regex.NFA.Compile.ProofData.Char.intro' nfa next c = { nfa := nfa, next := next, e := Regex.Data.Expr.char c, c := c, expr_eq := ⋯ }
Instances For
- cs : Data.Classes
Instances
def
Regex.NFA.Compile.ProofData.Classes.intro
{nfa : NFA}
{next : Nat}
{cs : Data.Classes}
{result : NFA}
:
nfa.pushRegex next (Data.Expr.classes cs) = result → Classes
Equations
- Regex.NFA.Compile.ProofData.Classes.intro x✝ = { nfa := nfa, next := next, e := Regex.Data.Expr.classes cs, cs := cs, expr_eq := ⋯ }
Instances For
Equations
- Regex.NFA.Compile.ProofData.Classes.intro' nfa next cs = { nfa := nfa, next := next, e := Regex.Data.Expr.classes cs, cs := cs, expr_eq := ⋯ }
Instances For
def
Regex.NFA.Compile.ProofData.Group.intro
{nfa : NFA}
{next tag : Nat}
{e' : Data.Expr}
{result : NFA}
:
nfa.pushRegex next (Data.Expr.group tag e') = result → Group
Equations
- Regex.NFA.Compile.ProofData.Group.intro x✝ = { nfa := nfa, next := next, e := Regex.Data.Expr.group tag e', tag := tag, e' := e', expr_eq := ⋯ }
Instances For
Equations
- Regex.NFA.Compile.ProofData.Group.intro' nfa next tag e' = { nfa := nfa, next := next, e := Regex.Data.Expr.group tag e', tag := tag, e' := e', expr_eq := ⋯ }
Instances For
def
Regex.NFA.Compile.ProofData.Alternate.intro
{nfa : NFA}
{next : Nat}
{e₁ e₂ : Data.Expr}
{result : NFA}
:
Equations
- Regex.NFA.Compile.ProofData.Alternate.intro x✝ = { nfa := nfa, next := next, e := e₁.alternate e₂, e₁ := e₁, e₂ := e₂, expr_eq := ⋯ }
Instances For
def
Regex.NFA.Compile.ProofData.Concat.intro
{nfa : NFA}
{next : Nat}
{e₁ e₂ : Data.Expr}
{result : NFA}
:
Equations
- Regex.NFA.Compile.ProofData.Concat.intro x✝ = { nfa := nfa, next := next, e := e₁.concat e₂, e₁ := e₁, e₂ := e₂, expr_eq := ⋯ }