Documentation

Mathlib.Control.Bitraversable.Instances

Bitraversable instances #

This file provides Bitraversable instances for concrete bifunctors:

References #

Tags #

traversable bitraversable functor bifunctor applicative

def Prod.bitraverse {F : Type u → Type u} [Applicative F] {α : Type u_1} {α' : Type u} {β : Type u_2} {β' : Type u} (f : αF α') (f' : βF β') :
α × βF (α' × β')

The bitraverse function for α × β.

Equations
    Instances For
      def Sum.bitraverse {F : Type u → Type u} [Applicative F] {α : Type u_1} {α' : Type u} {β : Type u_2} {β' : Type u} (f : αF α') (f' : βF β') :
      α βF (α' β')

      The bitraverse function for α ⊕ β.

      Equations
        Instances For
          def Const.bitraverse {F : Type u → Type u} [Applicative F] {α : Type u_1} {α' : Type u} {β : Type u_2} {β' : Type u} (f : αF α') (f' : βF β') :
          Functor.Const α βF (Functor.Const α' β')

          The bitraverse function for Const. It throws away the second map.

          Equations
            Instances For
              def flip.bitraverse {t : Type u → Type u → Type u} [Bitraversable t] {F : Type u → Type u} [Applicative F] {α α' β β' : Type u} (f : αF α') (f' : βF β') :
              flip t α βF (flip t α' β')

              The bitraverse function for flip.

              Equations
                Instances For
                  Equations
                    @[instance 10]
                    instance Bitraversable.traversable {t : Type u → Type u → Type u} [Bitraversable t] {α : Type u} :
                    Equations
                      @[instance 10]
                      def Bicompl.bitraverse {t : Type u → Type u → Type u} [Bitraversable t] (F G : Type u → Type u) [Traversable F] [Traversable G] {m : Type u → Type u} [Applicative m] {α β α' β' : Type u} (f : αm β) (f' : α'm β') :
                      Function.bicompl t F G α α'm (Function.bicompl t F G β β')

                      The bitraverse function for bicompl.

                      Equations
                        Instances For
                          instance instBitraversableBicompl {t : Type u → Type u → Type u} [Bitraversable t] (F G : Type u → Type u) [Traversable F] [Traversable G] :
                          Equations
                            def Bicompr.bitraverse {t : Type u → Type u → Type u} [Bitraversable t] (F : Type u → Type u) [Traversable F] {m : Type u → Type u} [Applicative m] {α β α' β' : Type u} (f : αm β) (f' : α'm β') :
                            Function.bicompr F t α α'm (Function.bicompr F t β β')

                            The bitraverse function for bicompr.

                            Equations
                              Instances For
                                instance instBitraversableBicompr {t : Type u → Type u → Type u} [Bitraversable t] (F : Type u → Type u) [Traversable F] :
                                Equations