Documentation

LeanPool.PointwiseComposition.Foundation.Vorspiel.Multiset

Supporting results for pointwise provable equality.

Function to avoid reducing {a} + s to a ::ₘ s

Equations
Instances For

    ⦃x, y, z, ...⦄ notation for kpair

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

      The pair Unexpander construction in Multiset.

      Equations
      • One or more equations did not get rendered due to their size.
      Instances For
        @[simp]
        theorem PointwiseComposition.Multiset.mem_atom_iff {α : Type u_1} {a b : α} :
        a ∈ ⦃b⦄ ↔ a = b
        @[simp]
        theorem PointwiseComposition.Multiset.atom_le_iff {α : Type u_1} {a : α} {s : Multiset α} :
        ⦃a⦄ ≤ s ↔ a ∈ s
        @[simp]
        theorem PointwiseComposition.Multiset.atom_subset_iff {α : Type u_1} {a : α} {s : Multiset α} :
        ⦃a⦄ ⊆ s ↔ a ∈ s
        @[simp]
        theorem PointwiseComposition.Multiset.map_atom {α : Type u_1} {β : Type u_2} (f : α → β) (a : α) :
        theorem PointwiseComposition.Multiset.forall_mem_add {α : Type u_1} {p : α → Prop} {s t : Multiset α} :
        (∀ (a : α), a ∈ s + t → p a) ↔ (∀ (a : α), a ∈ s → p a) ∧ ∀ (a : α), a ∈ t → p a

        Universal membership over a sum splits into the two summands. This is a routine property of multiset membership.

        theorem PointwiseComposition.Multiset.forall_mem_atom {α : Type u_1} {p : α → Prop} {a : α} :
        (∀ (b : α), b ∈ ⦃a⦄ → p b) ↔ p a

        Universal membership over an atom reduces to its unique member. This is a routine property of multiset membership.

        theorem PointwiseComposition.Multiset.add_map_subset_map_filter_add_atom {α : Type u_1} {β : Type u_2} [DecidableEq α] (s : Multiset α) (t : Multiset β) (f : α → β) (a : α) :
        t + Multiset.map f s ⊆ Multiset.map f (Multiset.filter (fun (x : α) => x ≠ a) s) + ⦃f a⦄ + t

        After filtering out a, adjoining f a recovers every mapped member. This is a routine technical property of multiset membership.

        theorem PointwiseComposition.Multiset.map_subset_iff {α : Type u_1} {β : Type u_2} {s₁ s₂ : Multiset α} (f : α → β) (hf : Function.Injective f) :
        Multiset.map f s₁ ⊆ Multiset.map f s₂ ↔ s₁ ⊆ s₂

        Data and laws for Traversal in Multiset.

        Instances For
          def PointwiseComposition.Multiset.Traversal.cast {α : Type u_1} {s t : Multiset α} (h : s = t) :

          The cast construction in Multiset.Traversal.

          Equations
          Instances For
            theorem PointwiseComposition.Multiset.Traversal.toList_cast {α : Type u_1} {s t : Multiset α} (h : s = t) (u : Traversal s) :
            @[simp]

            The of List construction in Multiset.Traversal.

            Equations
            Instances For

              The equiv construction in Multiset.Traversal.

              Equations
              • One or more equations did not get rendered due to their size.
              Instances For
                def PointwiseComposition.Multiset.Traversal.map {α : Type u_1} {β : Type u_2} (f : α → β) {s : Multiset α} (t : Traversal s) :

                Construct a traversal after applying a function to every element.

                Equations
                Instances For

                  Construct a traversal of the elements satisfying a decidable predicate.

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

                    Construct a traversal after removing one occurrence of an element.

                    Equations
                    Instances For

                      Remove the distinguished occurrence from a traversal of an adjoined atom.

                      Equations
                      Instances For
                        def PointwiseComposition.Multiset.Traversal.getPreimage {β : Type u_1} {α : Type u_2} [DecidableEq β] {f : α → β} {s : Multiset α} (t : Traversal s) {b : β} (h : b ∈ Multiset.map f s) :
                        { a : α // a ∈ s ∧ f a = b }

                        Constructively extract a preimage from a mapped traversal.

                        Equations
                        Instances For