have eq₂ : String.utf8Len l + String.utf8Len m = String.utf8Len (l ++ m) := by simp
l m : List Char
c : Char
r : List Char
s : Substring
v : ValidFor l m (c :: r) s
this : s.stopPos < s.str.endPos
eq₁ : l ++ (m ++ c :: r) = l ++ m ++ c :: r
⊢ { data := l ++ (m ++ c :: r) }.get { byteIdx := String.utf8Len l + String.utf8Len m } = c
l m : List Char
c : Char
r : List Char
s : Substring
v : ValidFor l m (c :: r) s
this : s.stopPos < s.str.endPos
eq₁ : l ++ (m ++ c :: r) = l ++ m ++ c :: r
eq₂ : String.utf8Len l + String.utf8Len m = String.utf8Len (l ++ m)
⊢ { data := l ++ (m ++ c :: r) }.get { byteIdx := String.utf8Len l + String.utf8Len m } = c