# Documentation

Mathlib.Combinatorics.SetFamily.Compression.Down

# Down-compressions #

This file defines down-compression.

Down-compressing 𝒜 : Finset (Finset α) along a : α means removing a from the elements of 𝒜, when the resulting set is not already in 𝒜.

## Main declarations #

• Finset.nonMemberSubfamily: 𝒜.nonMemberSubfamily a is the subfamily of sets not containing a.
• Finset.memberSubfamily: 𝒜.memberSubfamily a is the image of the subfamily of sets containing a under removing a.
• Down.compression: Down-compression.

## Notation #

𝓓 a 𝒜 is notation for Down.compress a 𝒜 in locale SetFamily.

## References #

• https://github.com/b-mehta/maths-notes/blob/master/iii/mich/combinatorics.pdf

## Tags #

compression, down-compression

def Finset.nonMemberSubfamily {α : Type u_1} [inst : ] (a : α) (𝒜 : Finset ()) :

Elements of 𝒜 that do not contain a.

Equations
def Finset.memberSubfamily {α : Type u_1} [inst : ] (a : α) (𝒜 : Finset ()) :

Image of the elements of 𝒜 which contain a under removing a. Finsets that do not contain a such that insert a s ∈ 𝒜.

Equations
@[simp]
theorem Finset.mem_nonMemberSubfamily {α : Type u_1} [inst : ] {𝒜 : Finset ()} {s : } {a : α} :
s 𝒜 ¬a s
@[simp]
theorem Finset.mem_memberSubfamily {α : Type u_1} [inst : ] {𝒜 : Finset ()} {s : } {a : α} :
insert a s 𝒜 ¬a s
theorem Finset.nonMemberSubfamily_inter {α : Type u_1} [inst : ] (a : α) (𝒜 : Finset ()) (ℬ : Finset ()) :
theorem Finset.memberSubfamily_inter {α : Type u_1} [inst : ] (a : α) (𝒜 : Finset ()) (ℬ : Finset ()) :
theorem Finset.nonMemberSubfamily_union {α : Type u_1} [inst : ] (a : α) (𝒜 : Finset ()) (ℬ : Finset ()) :
theorem Finset.memberSubfamily_union {α : Type u_1} [inst : ] (a : α) (𝒜 : Finset ()) (ℬ : Finset ()) :
theorem Finset.card_memberSubfamily_add_card_nonMemberSubfamily {α : Type u_1} [inst : ] (a : α) (𝒜 : Finset ()) :
theorem Finset.memberSubfamily_union_nonMemberSubfamily {α : Type u_1} [inst : ] (a : α) (𝒜 : Finset ()) :
= Finset.image (fun s => ) 𝒜
@[simp]
theorem Finset.memberSubfamily_memberSubfamily {α : Type u_1} [inst : ] {𝒜 : Finset ()} {a : α} :
@[simp]
theorem Finset.memberSubfamily_nonMemberSubfamily {α : Type u_1} [inst : ] {𝒜 : Finset ()} {a : α} :
@[simp]
theorem Finset.nonMemberSubfamily_memberSubfamily {α : Type u_1} [inst : ] {𝒜 : Finset ()} {a : α} :
@[simp]
theorem Finset.nonMemberSubfamily_nonMemberSubfamily {α : Type u_1} [inst : ] {𝒜 : Finset ()} {a : α} :
def Down.compression {α : Type u_1} [inst : ] (a : α) (𝒜 : Finset ()) :

a-down-compressing 𝒜 means removing a from the elements of 𝒜 that contain it, when the resulting Finset is not already in 𝒜.

Equations
• One or more equations did not get rendered due to their size.

a-down-compressing 𝒜 means removing a from the elements of 𝒜 that contain it, when the resulting Finset is not already in 𝒜.

Equations
theorem Down.mem_compression {α : Type u_1} [inst : ] {𝒜 : Finset ()} {s : } {a : α} :
s s 𝒜 𝒜 ¬s 𝒜 insert a s 𝒜

a is in the down-compressed family iff it's in the original and its compression is in the original, or it's not in the original but it's the compression of something in the original.

theorem Down.erase_mem_compression {α : Type u_1} [inst : ] {𝒜 : Finset ()} {s : } {a : α} (hs : s 𝒜) :
theorem Down.erase_mem_compression_of_mem_compression {α : Type u_1} [inst : ] {𝒜 : Finset ()} {s : } {a : α} :
s
theorem Down.mem_compression_of_insert_mem_compression {α : Type u_1} [inst : ] {𝒜 : Finset ()} {s : } {a : α} (h : insert a s ) :
s
@[simp]
theorem Down.compression_idem {α : Type u_1} [inst : ] (a : α) (𝒜 : Finset ()) :
=

Down-compressing a family is idempotent.

@[simp]
theorem Down.card_compression {α : Type u_1} [inst : ] (a : α) (𝒜 : Finset ()) :

Down-compressing a family doesn't change its size.