Documentation

RegexCorrectness.Regex.Basic

Equations
  • One or more equations did not get rendered due to their size.
Instances For
    noncomputable def Regex.IsSearchRegex.inner {re : Regex} (s : re.IsSearchRegex) :
    Equations
    Instances For
      noncomputable def Regex.IsSearchRegex.expr {re : Regex} (s : re.IsSearchRegex) :
      Equations
      Instances For
        theorem Regex.IsSearchRegex.lt_of_mem_tags {re : Regex} {tag : } (s : re.IsSearchRegex) (h : tag s.expr.tags) :
        2 * tag < re.maxTag
        theorem Regex.IsSearchRegex.captureNextBuf_soundness' {s : String} {re : Regex} {bufferSize : } {pos : s.ValidPos} {matched : Buffer s bufferSize} (h : re.captureNextBuf bufferSize pos = some matched) (s✝ : re.IsSearchRegex) :
        ∃ (pos' : s.ValidPos) (pos'' : s.ValidPos) (groups : Data.CaptureGroups s), pos pos' Data.Expr.Captures pos' pos'' groups s✝.expr Strategy.EquivMaterializedUpdate (Strategy.materializeRegexGroups groups) matched
        theorem Regex.IsSearchRegex.captureNextBuf_soundness {s : String} {re : Regex} {bufferSize : } {pos : s.ValidPos} {matched : Buffer s bufferSize} (h : re.captureNextBuf bufferSize pos = some matched) (s✝ : re.IsSearchRegex) (le : 2 bufferSize) :
        theorem Regex.IsSearchRegex.captureNextBuf_completeness' {s : String} {re : Regex} {bufferSize : } {pos : s.ValidPos} (h : re.captureNextBuf bufferSize pos = none) (isr : re.IsSearchRegex) (pos' pos'' : s.ValidPos) (groups : Data.CaptureGroups s) (le : pos pos') (c : Data.Expr.Captures pos' pos'' groups isr.expr) :
        theorem Regex.IsSearchRegex.captureNextBuf_completeness {s : String} {re : Regex} {bufferSize : } {pos : s.ValidPos} (h : re.captureNextBuf bufferSize pos = none) (isr : re.IsSearchRegex) :
        ¬∃ (pos' : s.ValidPos) (pos'' : s.ValidPos) (groups : Data.CaptureGroups s), pos pos' Data.Expr.Captures pos' pos'' groups isr.expr
        theorem Regex.IsSearchRegex.searchNext_some {s : String} {re : Regex} {pos : s.ValidPos} {slice : String.Slice} (h : re.searchNext pos = some slice) (isr : re.IsSearchRegex) :
        ∃ (pos' : s.ValidPos) (pos'' : s.ValidPos) (groups : Data.CaptureGroups s), pos pos' Data.Expr.Captures pos' pos'' groups isr.expr slice.startInclusive = pos' slice.endExclusive = pos''