Documentation

Trestle.Data.Cnf.Defs

@[reducible, inline]
abbrev Trestle.Clause (L : Type u) :

A disjunction of literals

Equations
Instances For
    @[reducible, inline]
    abbrev Trestle.Cnf (L : Type u) :

    A conjunction of clauses

    Equations
    Instances For
      def Trestle.Cube (L : Type u) :

      A conjunction of literals. The implementation is identical to clauses, but the interpretation is different.

      Equations
      Instances For
        def Trestle.Clause.or {L : Type u} (c1 c2 : Clause L) :
        Equations
        Instances For
          def Trestle.Clause.negate {L : Type u} {ν : Type v} [LitVar L ν] (c : Clause L) :
          Equations
          Instances For
            def Trestle.Clause.map {L : Type u} {ν : Type v} [LitVar L ν] {ν' : Type u_1} (L' : Type u_2) [LitVar L' ν'] (f : νν') (c : Clause L) :
            Equations
            Instances For
              def Trestle.Cnf.addClause {L : Type u} (f : Cnf L) (C : Clause L) :
              Cnf L
              Equations
              Instances For
                def Trestle.Cnf.and {L : Type u} (f1 f2 : Cnf L) :
                Cnf L
                Equations
                Instances For
                  def Trestle.Cnf.not {L : Type u} {ν : Type v} [LitVar L ν] (c : Clause L) :
                  Cnf L
                  Equations
                  Instances For
                    def Trestle.Cnf.any {L : Type u} (ls : Array L) :
                    Cnf L
                    Equations
                    Instances For
                      def Trestle.Cnf.all {L : Type u} (ls : Array L) :
                      Cnf L
                      Equations
                      Instances For
                        @[reducible, inline]
                        abbrev Trestle.Cube.toArray {L : Type u} (c : Cube L) :
                        Equations
                        Instances For
                          def Trestle.Cube.and {L : Type u} (c1 c2 : Cube L) :
                          Equations
                          Instances For
                            def Trestle.Cube.map {L : Type u} {ν : Type v} [LitVar L ν] {ν' : Type u_1} (L' : Type u_2) [LitVar L' ν'] (f : νν') (c : Cube L) :
                            Cube L'
                            Equations
                            Instances For
                              def Trestle.Cube.negate {L : Type u} {ν : Type v} [LitVar L ν] (c : Cube L) :
                              Equations
                              Instances For
                                @[reducible, inline]
                                abbrev Trestle.Cubing (L : Type u_1) :
                                Type u_1
                                Equations
                                Instances For
                                  Equations
                                  Instances For
                                    def Trestle.Cubing.prod {L : Type u_1} (c1 c2 : Cubing L) :
                                    Equations
                                    Instances For