Skip to content

feat(Combinatorics/SimpleGraph/Automorphism): Aut, autCount, and orbit-stabiliser for copies and embeddings#25

Closed
FordUniver wants to merge 1 commit into
feat/copy-toUnlabeled-outfrom
feat/simplegraph-aut
Closed

feat(Combinatorics/SimpleGraph/Automorphism): Aut, autCount, and orbit-stabiliser for copies and embeddings#25
FordUniver wants to merge 1 commit into
feat/copy-toUnlabeled-outfrom
feat/simplegraph-aut

Conversation

@FordUniver

@FordUniver FordUniver commented May 18, 2026

Copy link
Copy Markdown
Owner

Introduces the type Aut G := G ≃g G of graph automorphisms and the corresponding count autCount G, then uses the orbit-stabiliser principle on both Copy G H and Embedding G H to prove H.copyCount G = H.unlabeledCopyCount G * G.autCount and H.embeddingCount G = H.unlabeledEmbeddingCount G * G.autCount. In both, the labeled copies decompose as a disjoint union of fibers indexed by the corresponding unlabelled copies, with each fiber a torsor under Aut G. The fiber-action machinery and the sigma decompositions are the substantive content; the two multiplicative identities are the corollaries.


The main achievement is to allow the user to freely convert between {copy,embedding}Count and unlabeled{copy,embedding}Count through autCount. Sits on top of the Copy / InducedCopy refactor-feat stack (final step leanprover-community#38631), plus a small prerequisite (leanprover-community#38631) extracting the standalone Quot.mk / Quot.out-style toolage between labeled and unlabeled copies.

Diff for the changes just in this PR over its predecessor: link

@FordUniver FordUniver changed the title feat(Combinatorics/SimpleGraph/Automorphism): add Aut, autCount, and orbit-stabiliser for copies feat(Combinatorics/SimpleGraph/Automorphism): introduce Aut and autCount May 18, 2026
@FordUniver
FordUniver force-pushed the feat/simplegraph-aut branch from 8fb9896 to 9e24568 Compare May 18, 2026 09:45
@FordUniver
FordUniver changed the base branch from master to feat/ind-copy-count May 18, 2026 09:45
@FordUniver
FordUniver force-pushed the feat/ind-copy-count branch from e238d00 to 8d07210 Compare May 18, 2026 12:22
@FordUniver
FordUniver force-pushed the feat/simplegraph-aut branch 11 times, most recently from 41d8fe1 to 791718b Compare May 18, 2026 17:40
…or copies and embeddings

Introduce the type `SimpleGraph.Aut G := G ≃g G` of graph automorphisms with the
associated count `SimpleGraph.autCount G`. Develop the free precomposition action of
`Aut G` on `Copy G H` / `Embedding G H` and prove the orbit-stabiliser identities at
both the cardinal and equivalence levels:

* `H.copyCount G = H.unlabeledCopyCount G * G.autCount`
* `H.embeddingCount G = H.unlabeledEmbeddingCount G * G.autCount`

The fiber-of-`toSubgraph` machinery (`fiberAut`, `fiberAut_spec`, `fiberEquivAut`,
`fiberEquivAutOf`) is fully mirrored between `Copy` and `Embedding`, with Embedding's
side built independently rather than delegating to Copy's, so induced notions stand on
equal footing with the ordinary ones.

Adds supporting `Copy.lean` / `InducedCopy.lean` utility lemmas that were extracted for
the orbit-stabiliser proof:
* `Copy.apply_eq_iff_eq` (simp injectivity iff)
* `Copy.toHom_comp` / `Embedding.toCopy_comp` (composition functoriality)
* `Copy.verts_toSubgraph`, `Embedding.verts_toSubgraph`
* `Copy.toSubgraph_adj_iff`, `Embedding.toSubgraph_adj_iff`
* `Copy.toSubgraph_comp`, `Embedding.toSubgraph_comp`
* `Copy.apply_mem_verts_toSubgraph`, `Embedding.apply_mem_verts_toSubgraph`
* `Iso.toCopy_toSubgraph`
* `Copy.mem_range_of_toSubgraph_eq`, `Embedding.mem_range_of_toSubgraph_eq`
* `Copy.equivOfToSubgraphEq` + `_apply`, `Embedding.equivOfToSubgraphEq` + `_apply`
* `Copy.toEmbeddingOfIsInduced` + `_apply` (canonical promotion from copy to embedding
  when the image is induced).

The labeled-↔-unlabeled projection pair (`toUnlabeledCopy` / `out` and their Embedding
mirrors) lands in the prerequisite PR; this PR consumes them.
@FordUniver
FordUniver force-pushed the feat/simplegraph-aut branch from c74f5c5 to af93dec Compare May 19, 2026 11:17
@FordUniver
FordUniver changed the base branch from feat/ind-copy-count to feat/copy-toUnlabeled-out May 19, 2026 11:17
@FordUniver FordUniver changed the title feat(Combinatorics/SimpleGraph/Automorphism): introduce Aut and autCount feat(Combinatorics/SimpleGraph/Automorphism): Aut, autCount, and orbit-stabiliser for copies and embeddings May 19, 2026
@FordUniver FordUniver closed this May 19, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant