Documentation

Foundation.Logic.LogicSymbol

Logic Symbols #

This file defines structure that has logical connectives $\top, \bot, \land, \lor, \to, \lnot$ and their homomorphisms.

Main Definitions #

class LO.SigmaSymbol (α : Type u_1) :
Type u_1
  • sigma : α
Instances
    class LO.PiSymbol (α : Type u_1) :
    Type u_1
    • pi : α
    Instances
      class LO.DeltaSymbol (α : Type u_1) :
      Type u_1
      • delta : α
      Instances
        inductive LO.Polarity :
        Instances For
          Equations
          Instances For
            @[simp]
            @[simp]
            @[simp]
            theorem LO.Polarity.alt_alt (Γ : LO.Polarity) :
            Γ.alt.alt = Γ
            @[simp]
            theorem LO.SigmaPiDelta.alt_alt (Γ : LO.SigmaPiDelta) :
            Γ.alt.alt = Γ
            class LO.Tilde (α : Type u_1) :
            Type u_1
            • tilde : αα
            Instances
              class LO.Arrow (α : Type u_1) :
              Type u_1
              • arrow : ααα
              Instances
                class LO.Wedge (α : Type u_1) :
                Type u_1
                • wedge : ααα
                Instances
                  class LO.Vee (α : Type u_1) :
                  Type u_1
                  • vee : ααα
                  Instances
                    class LO.LogicalConnective (α : Type u_1) extends Top , Bot , LO.Tilde , LO.Arrow , LO.Wedge , LO.Vee :
                    Type u_1
                      Instances
                        class LO.UnivQuantifier (α : Type u_1) :
                        Type u_1
                        • univ : {n : } → α (n + 1)α n
                        Instances
                          class LO.ExQuantifier (α : Type u_1) :
                          Type u_1
                          • ex : {n : } → α (n + 1)α n
                          Instances
                            class LO.UnivQuantifier₂ (α : Type u_1) :
                            Type u_1
                            • univ₂₁ : {m n : } → α (m + 1) nα m n
                            • univ₂₂ : {m n : } → α m (n + 1)α m n
                            Instances
                              class LO.ExQuantifier₂ (α : Type u_1) :
                              Type u_1
                              • ex₂₁ : {m n : } → α (m + 1) nα m n
                              • ex₂₂ : {m n : } → α m (n + 1)α m n
                              Instances
                                def LO.univClosure {α : Type u_1} [LO.UnivQuantifier α] {n : } :
                                α nα 0
                                Equations
                                Instances For
                                  @[simp]
                                  theorem LO.univClosure_zero {α : Type u_1} [LO.UnivQuantifier α] (a : α 0) :
                                  ∀* a = a
                                  theorem LO.univClosure_succ {α : Type u_1} [LO.UnivQuantifier α] {n : } (a : α (n + 1)) :
                                  def LO.univItr {α : Type u_1} [LO.UnivQuantifier α] {n : } (k : ) :
                                  α (n + k)α n
                                  Equations
                                  Instances For
                                    Equations
                                    • One or more equations did not get rendered due to their size.
                                    Instances For
                                      @[simp]
                                      theorem LO.univItr_zero {α : Type u_1} [LO.UnivQuantifier α] {n : } (a : α n) :
                                      ∀^[0] a = a
                                      @[simp]
                                      theorem LO.univItr_one {α : Type u_1} [LO.UnivQuantifier α] {n : } (a : α (n + 1)) :
                                      theorem LO.univItr_succ {α : Type u_1} [LO.UnivQuantifier α] {n : } {k : } (a : α (n + (k + 1))) :
                                      ∀^[k + 1] a = ∀^[k] ∀' a
                                      def LO.exClosure {α : Type u_1} [LO.ExQuantifier α] {n : } :
                                      α nα 0
                                      Equations
                                      Instances For
                                        @[simp]
                                        theorem LO.exClosure_zero {α : Type u_1} [LO.ExQuantifier α] (a : α 0) :
                                        ∃* a = a
                                        theorem LO.exClosure_succ {α : Type u_1} [LO.ExQuantifier α] {n : } (a : α (n + 1)) :
                                        def LO.exItr {α : Type u_1} [LO.ExQuantifier α] {n : } (k : ) :
                                        α (n + k)α n
                                        Equations
                                        Instances For
                                          Equations
                                          • One or more equations did not get rendered due to their size.
                                          Instances For
                                            @[simp]
                                            theorem LO.exItr_zero {α : Type u_1} [LO.ExQuantifier α] {n : } (a : α n) :
                                            ∃^[0] a = a
                                            @[simp]
                                            theorem LO.exItr_one {α : Type u_1} [LO.ExQuantifier α] {n : } (a : α (n + 1)) :
                                            theorem LO.exItr_succ {α : Type u_1} [LO.ExQuantifier α] {n : } {k : } (a : α (n + (k + 1))) :
                                            ∃^[k + 1] a = ∃^[k] ∃' a
                                            def LO.quant {α : Type u_1} [LO.UnivQuantifier α] [LO.ExQuantifier α] {n : } :
                                            LO.Polarityα (n + 1)α n
                                            Equations
                                            Instances For
                                              @[simp]
                                              theorem LO.quant_sigma {α : Type u_1} [LO.UnivQuantifier α] [LO.ExQuantifier α] {n : } (p : α (n + 1)) :
                                              @[simp]
                                              theorem LO.quant_pi {α : Type u_1} [LO.UnivQuantifier α] [LO.ExQuantifier α] {n : } (p : α (n + 1)) :
                                              def LO.univClosure₂₁ {α : Type u_1} [LO.UnivQuantifier₂ α] {m : } {n : } :
                                              α m nα 0 n
                                              Equations
                                              Instances For
                                                def LO.univClosure₂₂ {α : Type u_1} [LO.UnivQuantifier₂ α] {m : } {n : } :
                                                α m nα m 0
                                                Equations
                                                Instances For
                                                  @[simp]
                                                  theorem LO.univClosure₂₁_zero {α : Type u_1} [LO.UnivQuantifier₂ α] {n : } (a : α 0 n) :
                                                  theorem LO.univClosure₂₁_succ {α : Type u_1} [LO.UnivQuantifier₂ α] {m : } {n : } (a : α (m + 1) n) :
                                                  @[simp]
                                                  theorem LO.univClosure₂₂_zero {α : Type u_1} [LO.UnivQuantifier₂ α] {m : } (a : α m 0) :
                                                  theorem LO.univClosure₂₂_succ {α : Type u_1} [LO.UnivQuantifier₂ α] {m : } {n : } (a : α m (n + 1)) :
                                                  def LO.exClosure₂₁ {α : Type u_1} [LO.ExQuantifier₂ α] {m : } {n : } :
                                                  α m nα 0 n
                                                  Equations
                                                  Instances For
                                                    def LO.exClosure₂₂ {α : Type u_1} [LO.ExQuantifier₂ α] {m : } {n : } :
                                                    α m nα m 0
                                                    Equations
                                                    Instances For
                                                      @[simp]
                                                      theorem LO.exClosure₂₁_zero {α : Type u_1} [LO.ExQuantifier₂ α] {n : } (a : α 0 n) :
                                                      theorem LO.exClosure₂₁_succ {α : Type u_1} [LO.ExQuantifier₂ α] {m : } {n : } (a : α (m + 1) n) :
                                                      @[simp]
                                                      theorem LO.exClosure₂₂_zero {α : Type u_1} [LO.ExQuantifier₂ α] {m : } (a : α m 0) :
                                                      theorem LO.exClosure₂₂_succ {α : Type u_1} [LO.ExQuantifier₂ α] {m : } {n : } (a : α m (n + 1)) :
                                                      Instances
                                                        @[simp]
                                                        @[simp]
                                                        theorem LO.DeMorgan.imply {F : Type u_1} [LO.LogicalConnective F] [self : LO.DeMorgan F] (p : F) (q : F) :
                                                        p q = p q
                                                        @[simp]
                                                        theorem LO.DeMorgan.and {F : Type u_1} [LO.LogicalConnective F] [self : LO.DeMorgan F] (p : F) (q : F) :
                                                        (p q) = p q
                                                        @[simp]
                                                        theorem LO.DeMorgan.or {F : Type u_1} [LO.LogicalConnective F] [self : LO.DeMorgan F] (p : F) (q : F) :
                                                        (p q) = p q
                                                        @[simp]
                                                        theorem LO.DeMorgan.neg {F : Type u_1} [LO.LogicalConnective F] [self : LO.DeMorgan F] (p : F) :
                                                        class LO.NegAbbrev (F : Type u_1) [LO.Tilde F] [LO.Arrow F] [Bot F] :

                                                        Introducing ∼p as an abbreviation of p ➝ ⊥.

                                                        Instances
                                                          theorem LO.NegAbbrev.neg {F : Type u_1} [LO.Tilde F] [LO.Arrow F] [Bot F] [self : LO.NegAbbrev F] {p : F} :
                                                          @[match_pattern]
                                                          def LO.LogicalConnective.iff {α : Type u_1} [LO.LogicalConnective α] (a : α) (b : α) :
                                                          α
                                                          Equations
                                                          Instances For
                                                            Equations
                                                            • One or more equations did not get rendered due to their size.
                                                            Instances For
                                                              @[simp]
                                                              theorem LO.LogicalConnective.Prop.arrow_eq (p : Prop) (q : Prop) :
                                                              p q = (pq)
                                                              @[simp]
                                                              theorem LO.LogicalConnective.Prop.and_eq (p : Prop) (q : Prop) :
                                                              p q = (p q)
                                                              @[simp]
                                                              theorem LO.LogicalConnective.Prop.or_eq (p : Prop) (q : Prop) :
                                                              p q = (p q)
                                                              @[simp]
                                                              theorem LO.LogicalConnective.Prop.iff_eq (p : Prop) (q : Prop) :
                                                              p q = (p q)
                                                              Equations
                                                              • One or more equations did not get rendered due to their size.
                                                              • map_top : ∀ (f : F), f =
                                                              • map_bot : ∀ (f : F), f =
                                                              • map_neg : ∀ (f : F) (p : α), f (p) = f p
                                                              • map_imply : ∀ (f : F) (p q : α), f (p q) = f p f q
                                                              • map_and : ∀ (f : F) (p q : α), f (p q) = f p f q
                                                              • map_or : ∀ (f : F) (p q : α), f (p q) = f p f q
                                                              Instances
                                                                @[simp]
                                                                theorem LO.LogicalConnective.HomClass.map_top {F : Type u_1} {α : outParam (Type u_2)} {β : outParam (Type u_3)} [LO.LogicalConnective α] [LO.LogicalConnective β] [FunLike F α β] [self : LO.LogicalConnective.HomClass F α β] (f : F) :
                                                                @[simp]
                                                                theorem LO.LogicalConnective.HomClass.map_bot {F : Type u_1} {α : outParam (Type u_2)} {β : outParam (Type u_3)} [LO.LogicalConnective α] [LO.LogicalConnective β] [FunLike F α β] [self : LO.LogicalConnective.HomClass F α β] (f : F) :
                                                                @[simp]
                                                                theorem LO.LogicalConnective.HomClass.map_neg {F : Type u_1} {α : outParam (Type u_2)} {β : outParam (Type u_3)} [LO.LogicalConnective α] [LO.LogicalConnective β] [FunLike F α β] [self : LO.LogicalConnective.HomClass F α β] (f : F) (p : α) :
                                                                f (p) = f p
                                                                @[simp]
                                                                theorem LO.LogicalConnective.HomClass.map_imply {F : Type u_1} {α : outParam (Type u_2)} {β : outParam (Type u_3)} [LO.LogicalConnective α] [LO.LogicalConnective β] [FunLike F α β] [self : LO.LogicalConnective.HomClass F α β] (f : F) (p : α) (q : α) :
                                                                f (p q) = f p f q
                                                                @[simp]
                                                                theorem LO.LogicalConnective.HomClass.map_and {F : Type u_1} {α : outParam (Type u_2)} {β : outParam (Type u_3)} [LO.LogicalConnective α] [LO.LogicalConnective β] [FunLike F α β] [self : LO.LogicalConnective.HomClass F α β] (f : F) (p : α) (q : α) :
                                                                f (p q) = f p f q
                                                                @[simp]
                                                                theorem LO.LogicalConnective.HomClass.map_or {F : Type u_1} {α : outParam (Type u_2)} {β : outParam (Type u_3)} [LO.LogicalConnective α] [LO.LogicalConnective β] [FunLike F α β] [self : LO.LogicalConnective.HomClass F α β] (f : F) (p : α) (q : α) :
                                                                f (p q) = f p f q
                                                                instance LO.LogicalConnective.HomClass.instCoeFunForall (F : Type u_1) (α : outParam (Type u_2)) (β : outParam (Type u_3)) [FunLike F α β] :
                                                                CoeFun F fun (x : F) => αβ
                                                                Equations
                                                                @[simp]
                                                                theorem LO.LogicalConnective.HomClass.map_iff (F : Type u_1) (α : outParam (Type u_2)) (β : outParam (Type u_3)) [LO.LogicalConnective α] [LO.LogicalConnective β] [FunLike F α β] [LO.LogicalConnective.HomClass F α β] (f : F) (a : α) (b : α) :
                                                                f (a b) = f a f b
                                                                structure LO.LogicalConnective.Hom (α : Type u_1) (β : Type u_2) [LO.LogicalConnective α] [LO.LogicalConnective β] :
                                                                Type (max u_1 u_2)
                                                                • toTr : αβ
                                                                • map_top' : self.toTr =
                                                                • map_bot' : self.toTr =
                                                                • map_neg' : ∀ (p : α), self.toTr (p) = self.toTr p
                                                                • map_imply' : ∀ (p q : α), self.toTr (p q) = self.toTr p self.toTr q
                                                                • map_and' : ∀ (p q : α), self.toTr (p q) = self.toTr p self.toTr q
                                                                • map_or' : ∀ (p q : α), self.toTr (p q) = self.toTr p self.toTr q
                                                                Instances For
                                                                  theorem LO.LogicalConnective.Hom.map_top' {α : Type u_1} {β : Type u_2} [LO.LogicalConnective α] [LO.LogicalConnective β] (self : α →ˡᶜ β) :
                                                                  self.toTr =
                                                                  theorem LO.LogicalConnective.Hom.map_bot' {α : Type u_1} {β : Type u_2} [LO.LogicalConnective α] [LO.LogicalConnective β] (self : α →ˡᶜ β) :
                                                                  self.toTr =
                                                                  theorem LO.LogicalConnective.Hom.map_neg' {α : Type u_1} {β : Type u_2} [LO.LogicalConnective α] [LO.LogicalConnective β] (self : α →ˡᶜ β) (p : α) :
                                                                  self.toTr (p) = self.toTr p
                                                                  theorem LO.LogicalConnective.Hom.map_imply' {α : Type u_1} {β : Type u_2} [LO.LogicalConnective α] [LO.LogicalConnective β] (self : α →ˡᶜ β) (p : α) (q : α) :
                                                                  self.toTr (p q) = self.toTr p self.toTr q
                                                                  theorem LO.LogicalConnective.Hom.map_and' {α : Type u_1} {β : Type u_2} [LO.LogicalConnective α] [LO.LogicalConnective β] (self : α →ˡᶜ β) (p : α) (q : α) :
                                                                  self.toTr (p q) = self.toTr p self.toTr q
                                                                  theorem LO.LogicalConnective.Hom.map_or' {α : Type u_1} {β : Type u_2} [LO.LogicalConnective α] [LO.LogicalConnective β] (self : α →ˡᶜ β) (p : α) (q : α) :
                                                                  self.toTr (p q) = self.toTr p self.toTr q
                                                                  Equations
                                                                  • One or more equations did not get rendered due to their size.
                                                                  Instances For
                                                                    Equations
                                                                    • LO.LogicalConnective.Hom.instFunLike = { coe := LO.LogicalConnective.Hom.toTr, coe_injective' := }
                                                                    instance LO.LogicalConnective.Hom.instCoeFunForall {α : Type u_1} {β : Type u_2} [LO.LogicalConnective α] [LO.LogicalConnective β] :
                                                                    CoeFun (α →ˡᶜ β) fun (x : α →ˡᶜ β) => αβ
                                                                    Equations
                                                                    • LO.LogicalConnective.Hom.instCoeFunForall = DFunLike.hasCoeToFun
                                                                    theorem LO.LogicalConnective.Hom.ext {α : Type u_1} {β : Type u_2} [LO.LogicalConnective α] [LO.LogicalConnective β] (f : α →ˡᶜ β) (g : α →ˡᶜ β) (h : ∀ (x : α), f x = g x) :
                                                                    f = g
                                                                    Equations
                                                                    • LO.LogicalConnective.Hom.instHomClass = { map_top := , map_bot := , map_neg := , map_imply := , map_and := , map_or := }
                                                                    Equations
                                                                    • LO.LogicalConnective.Hom.id = { toTr := id, map_top' := , map_bot' := , map_neg' := , map_imply' := , map_and' := , map_or' := }
                                                                    Instances For
                                                                      @[simp]
                                                                      theorem LO.LogicalConnective.Hom.app_id {α : Type u_1} [LO.LogicalConnective α] (a : α) :
                                                                      LO.LogicalConnective.Hom.id a = a
                                                                      def LO.LogicalConnective.Hom.comp {α : Type u_1} {β : Type u_2} {γ : Type u_3} [LO.LogicalConnective α] [LO.LogicalConnective β] [LO.LogicalConnective γ] (g : β →ˡᶜ γ) (f : α →ˡᶜ β) :
                                                                      α →ˡᶜ γ
                                                                      Equations
                                                                      • g.comp f = { toTr := g f, map_top' := , map_bot' := , map_neg' := , map_imply' := , map_and' := , map_or' := }
                                                                      Instances For
                                                                        @[simp]
                                                                        theorem LO.LogicalConnective.Hom.app_comp {α : Type u_1} {β : Type u_2} {γ : Type u_3} [LO.LogicalConnective α] [LO.LogicalConnective β] [LO.LogicalConnective γ] (g : β →ˡᶜ γ) (f : α →ˡᶜ β) (a : α) :
                                                                        (g.comp f) a = g (f a)
                                                                        def LO.LogicalConnective.ball {α : Type u_4} [(i : ) → LO.LogicalConnective (α i)] [LO.UnivQuantifier α] {n : } (p : α (n + 1)) (q : α (n + 1)) :
                                                                        α n
                                                                        Equations
                                                                        Instances For
                                                                          def LO.LogicalConnective.bex {α : Type u_4} [(i : ) → LO.LogicalConnective (α i)] [LO.ExQuantifier α] {n : } (p : α (n + 1)) (q : α (n + 1)) :
                                                                          α n
                                                                          Equations
                                                                          Instances For
                                                                            Equations
                                                                            • One or more equations did not get rendered due to their size.
                                                                            Instances For
                                                                              Equations
                                                                              • One or more equations did not get rendered due to their size.
                                                                              Instances For
                                                                                • verum : C
                                                                                • falsum : C
                                                                                • and : ∀ {f g : F}, C fC gC (f g)
                                                                                • or : ∀ {f g : F}, C fC gC (f g)
                                                                                Instances
                                                                                  theorem LO.LogicalConnective.AndOrClosed.and {F : Type u_4} [LO.LogicalConnective F] {C : FProp} [self : LO.LogicalConnective.AndOrClosed C] {f : F} {g : F} :
                                                                                  C fC gC (f g)
                                                                                  theorem LO.LogicalConnective.AndOrClosed.or {F : Type u_4} [LO.LogicalConnective F] {C : FProp} [self : LO.LogicalConnective.AndOrClosed C] {f : F} {g : F} :
                                                                                  C fC gC (f g)
                                                                                  • verum : C
                                                                                  • falsum : C
                                                                                  • and : ∀ {f g : F}, C fC gC (f g)
                                                                                  • or : ∀ {f g : F}, C fC gC (f g)
                                                                                  • not : ∀ {f : F}, C fC (f)
                                                                                  • imply : ∀ {f g : F}, C fC gC (f g)
                                                                                  Instances
                                                                                    theorem LO.LogicalConnective.Closed.not {F : Type u_4} [LO.LogicalConnective F] {C : FProp} [self : LO.LogicalConnective.Closed C] {f : F} :
                                                                                    C fC (f)
                                                                                    theorem LO.LogicalConnective.Closed.imply {F : Type u_4} [LO.LogicalConnective F] {C : FProp} [self : LO.LogicalConnective.Closed C] {f : F} {g : F} :
                                                                                    C fC gC (f g)
                                                                                    class LO.Tilde.Subclosed {F : Type u_1} [LO.Tilde F] (C : FProp) :
                                                                                    • tilde_closed : ∀ {p : F}, C (p)C p
                                                                                    Instances
                                                                                      theorem LO.Tilde.Subclosed.tilde_closed {F : Type u_1} [LO.Tilde F] {C : FProp} [self : LO.Tilde.Subclosed C] {p : F} :
                                                                                      C (p)C p
                                                                                      class LO.Arrow.Subclosed {F : Type u_1} [LO.Arrow F] (C : FProp) :
                                                                                      • arrow_closed : ∀ {p q : F}, C (p q)C p C q
                                                                                      Instances
                                                                                        theorem LO.Arrow.Subclosed.arrow_closed {F : Type u_1} [LO.Arrow F] {C : FProp} [self : LO.Arrow.Subclosed C] {p : F} {q : F} :
                                                                                        C (p q)C p C q
                                                                                        class LO.Wedge.Subclosed {F : Type u_1} [LO.Wedge F] (C : FProp) :
                                                                                        • wedge_closed : ∀ {p q : F}, C (p q)C p C q
                                                                                        Instances
                                                                                          theorem LO.Wedge.Subclosed.wedge_closed {F : Type u_1} [LO.Wedge F] {C : FProp} [self : LO.Wedge.Subclosed C] {p : F} {q : F} :
                                                                                          C (p q)C p C q
                                                                                          class LO.Vee.Subclosed {F : Type u_1} [LO.Vee F] (C : FProp) :
                                                                                          • vee_closed : ∀ {p q : F}, C (p q)C p C q
                                                                                          Instances
                                                                                            theorem LO.Vee.Subclosed.vee_closed {F : Type u_1} [LO.Vee F] {C : FProp} [self : LO.Vee.Subclosed C] {p : F} {q : F} :
                                                                                            C (p q)C p C q
                                                                                            def LO.conjLt {α : Type u_1} [LO.LogicalConnective α] (p : α) :
                                                                                            α
                                                                                            Equations
                                                                                            Instances For
                                                                                              @[simp]
                                                                                              theorem LO.conjLt_zero {α : Type u_1} [LO.LogicalConnective α] (p : α) :
                                                                                              @[simp]
                                                                                              theorem LO.conjLt_succ {α : Type u_1} [LO.LogicalConnective α] (p : α) (k : ) :
                                                                                              LO.conjLt p (k + 1) = p k LO.conjLt p k
                                                                                              @[simp]
                                                                                              theorem LO.hom_conj_prop {α : Type u_1} [LO.LogicalConnective α] {F : Type u_3} {k : } [FunLike F α Prop] [LO.LogicalConnective.HomClass F α Prop] (f : F) (p : α) :
                                                                                              f (LO.conjLt p k) i < k, f (p i)
                                                                                              def LO.disjLt {α : Type u_1} [LO.LogicalConnective α] (p : α) :
                                                                                              α
                                                                                              Equations
                                                                                              Instances For
                                                                                                @[simp]
                                                                                                theorem LO.disjLt_zero {α : Type u_1} [LO.LogicalConnective α] (p : α) :
                                                                                                @[simp]
                                                                                                theorem LO.disjLt_succ {α : Type u_1} [LO.LogicalConnective α] (p : α) (k : ) :
                                                                                                LO.disjLt p (k + 1) = p k LO.disjLt p k
                                                                                                @[simp]
                                                                                                theorem LO.hom_disj_prop {α : Type u_1} [LO.LogicalConnective α] {F : Type u_3} {k : } [FunLike F α Prop] [LO.LogicalConnective.HomClass F α Prop] (f : F) (p : α) :
                                                                                                f (LO.disjLt p k) i < k, f (p i)
                                                                                                def Matrix.conj {α : Type u_1} [LO.LogicalConnective α] {n : } :
                                                                                                (Fin nα)α
                                                                                                Equations
                                                                                                Instances For
                                                                                                  @[simp]
                                                                                                  theorem Matrix.conj_nil {α : Type u_1} [LO.LogicalConnective α] (v : Fin 0α) :
                                                                                                  @[simp]
                                                                                                  theorem Matrix.conj_cons {α : Type u_1} [LO.LogicalConnective α] {n : } {a : α} {v : Fin nα} :
                                                                                                  @[simp]
                                                                                                  theorem Matrix.conj_hom_prop {α : Type u_1} [LO.LogicalConnective α] {F : Type u_2} {n : } [FunLike F α Prop] [LO.LogicalConnective.HomClass F α Prop] (f : F) (v : Fin nα) :
                                                                                                  f (Matrix.conj v) = ∀ (i : Fin n), f (v i)
                                                                                                  theorem Matrix.hom_conj {β : Type u_3} {α : Type u_1} [LO.LogicalConnective α] [LO.LogicalConnective β] {F : Type u_2} {n : } [FunLike F α β] [LO.LogicalConnective.HomClass F α β] (f : F) (v : Fin nα) :
                                                                                                  f (Matrix.conj v) = Matrix.conj (f v)
                                                                                                  theorem Matrix.hom_conj₂ {β : Type u_3} {α : Type u_1} [LO.LogicalConnective α] [LO.LogicalConnective β] {F : Type u_2} {n : } [FunLike F α β] [LO.LogicalConnective.HomClass F α β] (f : F) (v : Fin nα) :
                                                                                                  f (Matrix.conj v) = Matrix.conj fun (i : Fin n) => f (v i)
                                                                                                  def Matrix.disj {α : Type u_1} [LO.LogicalConnective α] {n : } :
                                                                                                  (Fin nα)α
                                                                                                  Equations
                                                                                                  Instances For
                                                                                                    @[simp]
                                                                                                    theorem Matrix.disj_nil {α : Type u_1} [LO.LogicalConnective α] (v : Fin 0α) :
                                                                                                    @[simp]
                                                                                                    theorem Matrix.disj_cons {α : Type u_1} [LO.LogicalConnective α] {n : } {a : α} {v : Fin nα} :
                                                                                                    @[simp]
                                                                                                    theorem Matrix.disj_hom_prop {α : Type u_1} [LO.LogicalConnective α] {F : Type u_2} {n : } [FunLike F α Prop] [LO.LogicalConnective.HomClass F α Prop] (f : F) (v : Fin nα) :
                                                                                                    f (Matrix.disj v) = ∃ (i : Fin n), f (v i)
                                                                                                    theorem Matrix.hom_disj {β : Type u_3} {α : Type u_1} [LO.LogicalConnective α] [LO.LogicalConnective β] {F : Type u_2} {n : } [FunLike F α β] [LO.LogicalConnective.HomClass F α β] (f : F) (v : Fin nα) :
                                                                                                    f (Matrix.disj v) = Matrix.disj (f v)
                                                                                                    theorem Matrix.hom_disj' {β : Type u_3} {α : Type u_1} [LO.LogicalConnective α] [LO.LogicalConnective β] {F : Type u_2} {n : } [FunLike F α β] [LO.LogicalConnective.HomClass F α β] (f : F) (v : Fin nα) :
                                                                                                    f (Matrix.disj v) = Matrix.disj fun (i : Fin n) => f (v i)
                                                                                                    def List.conj {α : Type u_1} [LO.LogicalConnective α] :
                                                                                                    List αα
                                                                                                    Equations
                                                                                                    Instances For
                                                                                                      @[simp]
                                                                                                      theorem List.conj_nil {α : Type u_1} [LO.LogicalConnective α] :
                                                                                                      [].conj =
                                                                                                      @[simp]
                                                                                                      theorem List.conj_cons {α : Type u_1} [LO.LogicalConnective α] {a : α} {as : List α} :
                                                                                                      (a :: as).conj = a as.conj
                                                                                                      theorem List.map_conj {α : Type u_1} [LO.LogicalConnective α] {F : Type u_2} [FunLike F α Prop] [LO.LogicalConnective.HomClass F α Prop] (f : F) (l : List α) :
                                                                                                      f l.conj al, f a
                                                                                                      theorem List.map_conj_append {α : Type u_1} [LO.LogicalConnective α] {F : Type u_2} [FunLike F α Prop] [LO.LogicalConnective.HomClass F α Prop] (f : F) (l₁ : List α) (l₂ : List α) :
                                                                                                      f (l₁ ++ l₂).conj f (l₁.conj l₂.conj)
                                                                                                      def List.disj {α : Type u_1} [LO.LogicalConnective α] :
                                                                                                      List αα
                                                                                                      Equations
                                                                                                      Instances For
                                                                                                        @[simp]
                                                                                                        theorem List.disj_nil {α : Type u_1} [LO.LogicalConnective α] :
                                                                                                        [].disj =
                                                                                                        @[simp]
                                                                                                        theorem List.disj_cons {α : Type u_1} [LO.LogicalConnective α] {a : α} {as : List α} :
                                                                                                        (a :: as).disj = a as.disj
                                                                                                        theorem List.map_disj {α : Type u_1} [LO.LogicalConnective α] {F : Type u_2} [FunLike F α Prop] [LO.LogicalConnective.HomClass F α Prop] (f : F) (l : List α) :
                                                                                                        f l.disj al, f a
                                                                                                        theorem List.map_disj_append {α : Type u_1} [LO.LogicalConnective α] {F : Type u_2} [FunLike F α Prop] [LO.LogicalConnective.HomClass F α Prop] (f : F) (l₁ : List α) (l₂ : List α) :
                                                                                                        f (l₁ ++ l₂).disj f (l₁.disj l₂.disj)
                                                                                                        def List.conj₂ {F : Type u} [LO.LogicalConnective F] :
                                                                                                        List FF

                                                                                                        Remark: [p].conj₂ = p ≠ p ⋏ ⊤ = [p].conj

                                                                                                        Equations
                                                                                                        Instances For
                                                                                                          @[simp]
                                                                                                          @[simp]
                                                                                                          theorem List.conj₂_singleton {F : Type u} [LO.LogicalConnective F] {p : F} :
                                                                                                          [p] = p
                                                                                                          @[simp]
                                                                                                          theorem List.conj₂_doubleton {F : Type u} [LO.LogicalConnective F] {p : F} {q : F} :
                                                                                                          [p, q] = p q
                                                                                                          @[simp]
                                                                                                          theorem List.conj₂_cons_nonempty {F : Type u} [LO.LogicalConnective F] {a : F} {as : List F} (h : autoParam (as []) _auto✝) :
                                                                                                          (a :: as) = a as
                                                                                                          def List.disj₂ {F : Type u} [LO.LogicalConnective F] :
                                                                                                          List FF

                                                                                                          Remark: [p].disj = p ≠ p ⋎ ⊥ = [p].disj

                                                                                                          Equations
                                                                                                          Instances For
                                                                                                            @[simp]
                                                                                                            @[simp]
                                                                                                            theorem List.disj₂_singleton {F : Type u} [LO.LogicalConnective F] {p : F} :
                                                                                                            [p] = p
                                                                                                            @[simp]
                                                                                                            theorem List.disj₂_doubleton {F : Type u} [LO.LogicalConnective F] {p : F} {q : F} :
                                                                                                            [p, q] = p q
                                                                                                            @[simp]
                                                                                                            theorem List.disj₂_cons_nonempty {F : Type u} [LO.LogicalConnective F] {a : F} {as : List F} (h : autoParam (as []) _auto✝) :
                                                                                                            (a :: as) = a as
                                                                                                            theorem List.induction_with_singleton {F : Type u} {motive : List FProp} (hnil : motive []) (hsingle : ∀ (a : F), motive [a]) (hcons : ∀ (a : F) (as : List F), as []motive asmotive (a :: as)) (as : List F) :
                                                                                                            motive as
                                                                                                            noncomputable def Finset.conj {α : Type u_1} [LO.LogicalConnective α] (s : Finset α) :
                                                                                                            α
                                                                                                            Equations
                                                                                                            • s.conj = s.toList.conj
                                                                                                            Instances For
                                                                                                              theorem Finset.map_conj {α : Type u_2} [LO.LogicalConnective α] {F : Type u_1} [FunLike F α Prop] [LO.LogicalConnective.HomClass F α Prop] (f : F) (s : Finset α) :
                                                                                                              f s.conj as, f a
                                                                                                              theorem Finset.map_conj_union {α : Type u_2} [LO.LogicalConnective α] [DecidableEq α] {F : Type u_1} [FunLike F α Prop] [LO.LogicalConnective.HomClass F α Prop] (f : F) (s₁ : Finset α) (s₂ : Finset α) :
                                                                                                              f (s₁ s₂).conj f (s₁.conj s₂.conj)
                                                                                                              noncomputable def Finset.disj {α : Type u_1} [LO.LogicalConnective α] (s : Finset α) :
                                                                                                              α
                                                                                                              Equations
                                                                                                              • s.disj = s.toList.disj
                                                                                                              Instances For
                                                                                                                theorem Finset.map_disj {α : Type u_2} [LO.LogicalConnective α] {F : Type u_1} [FunLike F α Prop] [LO.LogicalConnective.HomClass F α Prop] (f : F) (s : Finset α) :
                                                                                                                f s.disj as, f a
                                                                                                                theorem Finset.map_disj_union {α : Type u_2} [LO.LogicalConnective α] [DecidableEq α] {F : Type u_1} [FunLike F α Prop] [LO.LogicalConnective.HomClass F α Prop] (f : F) (s₁ : Finset α) (s₂ : Finset α) :
                                                                                                                f (s₁ s₂).disj f (s₁.disj s₂.disj)