-
Notifications
You must be signed in to change notification settings - Fork 102
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: add String.splitOn_of_valid
#743
base: main
Are you sure you want to change the base?
feat: add String.splitOn_of_valid
#743
Conversation
2df1e65
to
3699b5d
Compare
awaiting-review |
75b032f
to
dd5f11a
Compare
This is doing too many things at once. Can you split out the preliminary steps (upstreaming from Mathlib) as separate PRs? |
e6b2836
to
cf96e0e
Compare
@semorrison I've split these commits into separate PRs. |
awaiting-review |
String.splitOn_of_valid
cf96e0e
to
55046a9
Compare
55046a9
to
4af3b7e
Compare
I resolved merge conflicts. |
753a314
to
46482de
Compare
`List.modifyHead_modifyHead` is from `Mathlib.Data.List.Basic`. I need it to prove `String.splitOn_of_valid`. See leanprover-community/batteries#743. Corresponding Batteries PR: leanprover-community/batteries#756
`List.modifyHead_modifyHead` is from `Mathlib.Data.List.Basic`. I need it to prove `String.splitOn_of_valid`. See leanprover-community/batteries#743. Corresponding Batteries PR: leanprover-community/batteries#756
`List.modifyHead_modifyHead` is from `Mathlib.Data.List.Basic`. I need it to prove `String.splitOn_of_valid`. See leanprover-community/batteries#743. Corresponding Batteries PR: leanprover-community/batteries#756 Co-authored-by: Kim Morrison <[email protected]>
f0f1fc8
to
da23815
Compare
awaiting-review |
I moved them to a new PR: #987. |
da23815
to
023112a
Compare
These are 'leftover' lemmas I created while trying to prove `String.splitOn_of_valid`. See leanprover-community#743.
These are 'leftover' lemmas I created while trying to prove `String.splitOn_of_valid`. See leanprover-community#743.
7e1376d
to
42d0f82
Compare
I need these lemmas to prove `String.splitOn_of_valid`.
* `List.splitOnceP` returns `(l₁, l₂)` for the first split `l = l₁ ++ l₂` such that `P l₂` returns true. * `List.splitOnList` splits a list at every occurrence of a separator list. The separators are not in the result. * `List.splitOnListAux` is an auxiliary definition for proving `String.splitOnAux_of_valid`. Co-authored-by: Mario Carneiro <[email protected]> Co-authored-by: Kim Morrison <[email protected]>
Add `String.splitOnAux_of_valid` and `String.splitOn_of_valid`.
42d0f82
to
2292378
Compare
These are 'leftover' lemmas I created while trying to prove `String.splitOn_of_valid`. See leanprover-community#743.
These are 'leftover' lemmas I created while trying to prove `String.splitOn_of_valid`. See leanprover-community#743.
These are 'leftover' lemmas I created while trying to prove `String.splitOn_of_valid`. See leanprover-community#743.
String.splitOn_of_valid
is the first of the eleven unproved theoremsabout strings. I added the following to prove it:
Nat.add
and listsBatteries.Data.List.SplitOnList
String.splitOnAux_of_valid
This is the third version of #495 and includes #531. The second version is #719.
Function.id_def
from mathlib #755