Documentation

Extra.Prod

def Prod.mapM {m : TypeType} {α β δ γ : Type} [Monad m] (f : αm β) (g : δm γ) (x : α × δ) :
m (β × γ)
Equations
Instances For
    @[reducible, inline]
    abbrev Prod.thd {α β γ : Type} (x : α × β × γ) :
    γ
    Equations
    Instances For
      def Prod.map₃ {α : Type u_1} {β : Type u_2} {γ : Type u_3} {δ : Type u_4} {ε : Type u_5} {ζ : Type u_6} (f : αδ) (g : βε) (h : γζ) :
      α × β × γδ × ε × ζ

      Exposed: Core/GuardedPlusCal/Semantics/Lemmas.lean reasons about map₃ applied to a literal triple, which needs the body to reduce.

      Equations
      Instances For
        def Prod.traverse₃ {α β γ δ ε ζ : Type} {F : TypeType} [Applicative F] (f : αF δ) (g : βF ε) (h : γF ζ) :
        α × β × γF (δ × ε × ζ)
        Equations
        Instances For
          def Prod.dup {α : Type u} (x : α) :
          α × α
          Equations
          Instances For
            @[reducible, inline]
            abbrev Prod.hasDecEq {α : Type u_1} {β : Type u_2} [DecidableEq α] [DecidableEq β] :
            DecidableEq (α × β)
            Equations
            Instances For
              theorem MProd.ext {α β : Type u_1} {x y : MProd α β} :
              x.fst = y.fstx.snd = y.sndx = y
              theorem MProd.ext_iff {α β : Type u_1} {x y : MProd α β} :
              x = y x.fst = y.fst x.snd = y.snd