Documentation

Mathlib.Data.Finset.Fin

Finsets in Fin n #

A few constructions for Finsets in Fin n.

Main declarations #

def Finset.attachFin (s : Finset โ„•) {n : โ„•} (h : โˆ€ m โˆˆ s, m < n) :
Finset (Fin n)

Given a Finset s of โ„• contained in {0,..., n-1}, the corresponding Finset in Fin n is s.attachFin h where h is a proof that all elements of s are less than n.

Instances For
    @[simp]
    theorem Finset.mem_attachFin {n : โ„•} {s : Finset โ„•} (h : โˆ€ m โˆˆ s, m < n) {a : Fin n} :
    a โˆˆ s.attachFin h โ†” โ†‘a โˆˆ s
    @[simp]
    theorem Finset.coe_attachFin {n : โ„•} {s : Finset โ„•} (h : โˆ€ m โˆˆ s, m < n) :
    โ†‘(s.attachFin h) = Fin.val โปยน' โ†‘s
    @[simp]
    theorem Finset.card_attachFin {n : โ„•} (s : Finset โ„•) (h : โˆ€ m โˆˆ s, m < n) :
    (s.attachFin h).card = s.card
    @[simp]
    theorem Finset.image_val_attachFin {n : โ„•} {s : Finset โ„•} (h : โˆ€ m โˆˆ s, m < n) :
    image Fin.val (s.attachFin h) = s
    @[simp]
    theorem Finset.map_valEmbedding_attachFin {n : โ„•} {s : Finset โ„•} (h : โˆ€ m โˆˆ s, m < n) :
    @[simp]
    theorem Finset.attachFin_subset_attachFin_iff {n : โ„•} {s t : Finset โ„•} (hs : โˆ€ m โˆˆ s, m < n) (ht : โˆ€ m โˆˆ t, m < n) :
    s.attachFin hs โІ t.attachFin ht โ†” s โІ t
    theorem Finset.attachFin_subset_attachFin {n : โ„•} {s t : Finset โ„•} (hst : s โІ t) (ht : โˆ€ m โˆˆ t, m < n) :
    s.attachFin โ‹ฏ โІ t.attachFin ht
    @[simp]
    theorem Finset.attachFin_ssubset_attachFin_iff {n : โ„•} {s t : Finset โ„•} (hs : โˆ€ m โˆˆ s, m < n) (ht : โˆ€ m โˆˆ t, m < n) :
    s.attachFin hs โŠ‚ t.attachFin ht โ†” s โŠ‚ t
    theorem Finset.attachFin_ssubset_attachFin {n : โ„•} {s t : Finset โ„•} (hst : s โŠ‚ t) (ht : โˆ€ m โˆˆ t, m < n) :
    s.attachFin โ‹ฏ โŠ‚ t.attachFin ht