| ∀ str1, str. # str1 < # str0 → true → string-right-trim(str, string-right-trim(str, str1)) = string-right-trim(str, str1) ⊦ string-right-trim(str, string-right-trim(str, str0)) = string-right-trim(str, str0) |
⊦ str2.last ∈ str1 ∧ str2 ≠ "" → string-right-trim(str1, str2) = string-right-trim(str1, str2.butlast)
str0.last ∈ str ∧ str0 ≠ "", ∀ str1, str. # str1 < # str0 → true → string-right-trim(str, string-right-trim(str, str1)) = string-right-trim(str, str1) ⊦ string-right-trim(str, string-right-trim(str, str0.butlast)) = string-right-trim(str, str0.butlast)
Used simplifier rules: right-trim-empty: ⊦ string-right-trim(str1, "") = "";%right-trim-done: ⊦ ¬ str2.last ∈ str1 ∧ str2 ≠ "" → string-right-trim(str1, str2) = str2; Used terms: str0, str