∀ {pat s : String.Slice} {needlePos stackPos : String.Pos.Raw},
  pat.isEmpty = false →
    String.Slice.Pattern.Model.ForwardSliceSearcher.PartialMatch✝ pat.copy.toByteArray s.copy.toByteArray
        needlePos.byteIdx stackPos.byteIdx →
      (needlePos = 0 → String.Pos.Raw.IsValidForSlice s stackPos) →
        String.Slice.Pattern.Model.ForwardSliceSearcher.Invariants✝ pat s needlePos stackPos