Documentation

HexPermGroup.Kernel.Images

Bitset check that l lists distinct values below n, none of them in seen.

Equations
Instances For

    l is the image list of a permutation of Fin n, checked in time linear in n.

    Equations
    Instances For

      The packing of an image list.

      Equations
      Instances For
        theorem Hex.PermGroup.Kernel.imagesDistinct_spec (n : Nat) (l : List Nat) (seen : Nat) :
        imagesDistinct n l seen = true → (∀ (x : Nat), x ∈ l → x < n ∧ seen.testBit x = false) ∧ l.Nodup
        theorem Hex.PermGroup.Kernel.imagesOk_spec {n : Nat} {l : List Nat} (h : imagesOk n l = true) :
        l.length = n ∧ (∀ (x : Nat), x ∈ l → x < n) ∧ l.Nodup
        theorem Hex.PermGroup.Kernel.mem_of_imagesOk {n : Nat} {l : List Nat} (h : imagesOk n l = true) {i : Nat} (hi : i < n) :
        i ∈ l

        Every value below n occurs in an accepted image list.

        theorem Hex.PermGroup.Kernel.val_get_of_ofNatArray? {n : Nat} {a : Array Nat} {p : Perm n} (h : Perm.ofNatArray? n a = some p) (i : Fin n) :
        ↑(p.get i) = a[↑i]!

        The entries of a checked raw permutation array.