-
Notifications
You must be signed in to change notification settings - Fork 297
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(set_theory/game/rgame): pre-games up to relabelling #13925
Conversation
This PR/issue depends on: |
I'm afraid I don't quite see the point of this PR. Is there any particular application in mind? If we want to recover the "identity" (as opposed to equality) relation in ONAG, the equivalence relation should look like pSet.equiv. This weaker condition already ensures substitutability as summand and as option, under both the normal and misere play conventions. (However, If we restrict to games with no duplicate options at every level, the weaker condition would be equivalent to the current definition (existence of bijections).) If your objective is to rewrite in inequalities easily, then casting to |
Yes, the idea is to recover the identity relation. It is true that relabellings aren't exactly this, since you can have duplicate options, but they're close enough that pretty much the same theorems work. Games up to relabelling have a few extra algebraic properties that pre-games don't have, i.e. they're an |
Actually, there is one extra thing about For instance, suppose we want do Conway induction on If they weren't so far back the dependency chain, the proofs of well-foundedness for |
On further thought, I agree that it would be best to define a quotient by extensionality rather than just relabelling. I can then prove that |
I'll keep thinking about what the best way to go about doing this is. Since there's a bunch of other refactors I want to do first, I'll close this PR for the moment. |
<
on (pre-)games #13963This is only a basic development. A complete development will require some missing lemmas about relabellings and multiplication, which are blocked by #13651.