support of a permutation #
Main definitions #
In the following, f g : Equiv.Perm α
.
Equiv.Perm.Disjoint
: two permutationsf
andg
areDisjoint
if every element is fixed either byf
, or byg
. Equivalently,f
andg
areDisjoint
iff theirsupport
are disjoint.Equiv.Perm.IsSwap
:f = swap x y
forx ≠ y
.Equiv.Perm.support
: the elementsx : α
that are not fixed byf
.
Assume α
is a Fintype:
Equiv.Perm.fixed_point_card_lt_of_ne_one f
says thatf
has strictly less thanFintype.card α - 1
fixed points, unlessf = 1
. (Equivalently,f.support
has at least 2 elements.)
theorem
Equiv.Perm.nodup_of_pairwise_disjoint
{α : Type u_1}
{l : List (Perm α)}
(h1 : 1 ∉ l)
(h2 : List.Pairwise Disjoint l)
:
l.Nodup
f.IsSwap
indicates that the permutation f
is a transposition of two elements.
Instances For
@[simp]
theorem
Equiv.Perm.ofSubtype_swap_eq
{α : Type u_1}
[DecidableEq α]
{p : α → Prop}
[DecidablePred p]
(x y : Subtype p)
:
theorem
Equiv.Perm.IsSwap.of_subtype_isSwap
{α : Type u_1}
[DecidableEq α]
{p : α → Prop}
[DecidablePred p]
{f : Perm (Subtype p)}
(h : f.IsSwap)
:
The Finset
of nonfixed points of a permutation.
Equations
- f.support = Finset.filter (fun (x : α) => f x ≠ x) Finset.univ
Instances For
@[simp]
theorem
Equiv.Perm.not_mem_support
{α : Type u_1}
[DecidableEq α]
[Fintype α]
{f : Perm α}
{x : α}
:
@[simp]
@[simp]
@[simp]
theorem
Equiv.Perm.ofSubtype_eq_iff
{α : Type u_1}
[DecidableEq α]
[Fintype α]
{g c : Perm α}
{s : Finset α}
(hg : ∀ (x : α), x ∈ s ↔ g x ∈ s)
:
ofSubtype (g.subtypePerm hg) = c ↔ c.support ≤ s ∧ ∀ (hc' : ∀ (x : α), x ∈ s ↔ c x ∈ s), c.subtypePerm hc' = g.subtypePerm hg
A permutation c is the extension of a restriction of g to s iff its support is contained in s and its restriction is that of g
theorem
Equiv.Perm.support_ofSubtype
{α : Type u_1}
[DecidableEq α]
[Fintype α]
{p : α → Prop}
[DecidablePred p]
(u : Perm (Subtype p))
:
theorem
Equiv.Perm.mem_support_of_mem_noncommProd_support
{α : Type u_2}
{β : Type u_3}
[DecidableEq β]
[Fintype β]
{s : Finset α}
{f : α → Perm β}
{comm : (↑s).Pairwise (Function.onFun Commute f)}
{x : β}
(hx : x ∈ (s.noncommProd f comm).support)
:
theorem
Equiv.Perm.disjoint_iff_disjoint_support
{α : Type u_1}
[DecidableEq α]
[Fintype α]
{f g : Perm α}
:
theorem
Equiv.Perm.Disjoint.disjoint_support
{α : Type u_1}
[DecidableEq α]
[Fintype α]
{f g : Perm α}
(h : f.Disjoint g)
:
theorem
Equiv.Perm.support_prod_of_pairwise_disjoint
{α : Type u_1}
[DecidableEq α]
[Fintype α]
(l : List (Perm α))
(h : List.Pairwise Disjoint l)
:
theorem
Equiv.Perm.support_noncommProd
{α : Type u_1}
[DecidableEq α]
[Fintype α]
{ι : Type u_2}
{k : ι → Perm α}
{s : Finset ι}
(hs : (↑s).Pairwise fun (i j : ι) => (k i).Disjoint (k j))
:
theorem
Equiv.Perm.Disjoint.mem_imp
{α : Type u_1}
[DecidableEq α]
[Fintype α]
{f g : Perm α}
(h : f.Disjoint g)
{x : α}
(hx : x ∈ f.support)
:
x ∉ g.support
theorem
Equiv.Perm.eq_on_support_mem_disjoint
{α : Type u_1}
[DecidableEq α]
[Fintype α]
{f : Perm α}
{l : List (Perm α)}
(h : f ∈ l)
(hl : List.Pairwise Disjoint l)
(x : α)
:
theorem
Equiv.Perm.support_le_prod_of_mem
{α : Type u_1}
[DecidableEq α]
[Fintype α]
{f : Perm α}
{l : List (Perm α)}
(h : f ∈ l)
(hl : List.Pairwise Disjoint l)
:
@[simp]
theorem
Equiv.Perm.support_extend_domain
{α : Type u_1}
[DecidableEq α]
[Fintype α]
{β : Type u_2}
[DecidableEq β]
[Fintype β]
{p : β → Prop}
[DecidablePred p]
(f : α ≃ Subtype p)
{g : Perm α}
:
theorem
Equiv.Perm.card_support_extend_domain
{α : Type u_1}
[DecidableEq α]
[Fintype α]
{β : Type u_2}
[DecidableEq β]
[Fintype β]
{p : β → Prop}
[DecidablePred p]
(f : α ≃ Subtype p)
{g : Perm α}
:
theorem
Equiv.Perm.one_lt_card_support_of_ne_one
{α : Type u_1}
[DecidableEq α]
[Fintype α]
{f : Perm α}
(h : f ≠ 1)
:
theorem
Equiv.Perm.two_le_card_support_of_ne_one
{α : Type u_1}
[DecidableEq α]
[Fintype α]
{f : Perm α}
(h : f ≠ 1)
:
theorem
Equiv.Perm.card_support_swap
{α : Type u_1}
[DecidableEq α]
[Fintype α]
{x y : α}
(hxy : x ≠ y)
:
theorem
Equiv.Perm.card_support_prod_list_of_pairwise_disjoint
{α : Type u_1}
[DecidableEq α]
[Fintype α]
{l : List (Perm α)}
(h : List.Pairwise Disjoint l)
:
@[simp]
theorem
Equiv.Perm.support_subtype_perm
{α : Type u_1}
[DecidableEq α]
{s : Finset α}
(f : Perm α)
(h : ∀ (x : α), x ∈ s ↔ f x ∈ s)
:
Fixed points #
theorem
Equiv.Perm.fixed_point_card_lt_of_ne_one
{α : Type u_1}
[DecidableEq α]
[Fintype α]
{σ : Perm α}
(h : σ ≠ 1)
:
@[simp]