Sha256: 3f087c855e0dff85b00796c389ecb5efd6b0de04842a40c2a954be2688deca88

Contents?: true

Size: 682 Bytes

Versions: 2

Compression:

Stored size: 682 Bytes

Contents

module Veritas
  module Logic

    # Abstract base class for logical connectives
    class Connective < Expression
      include AbstractClass

      # Return the inverse connective
      #
      # @example
      #   negation = connective.inverse
      #
      # @return [Negation]
      #
      # @api public
      def inverse
        Negation.new(self)
      end

      memoize :inverse

    end # class Connective
  end # module Logic
end # module Veritas

require 'veritas/logic/connective/binary'
require 'veritas/logic/connective/unary'

require 'veritas/logic/connective/conjunction'
require 'veritas/logic/connective/disjunction'
require 'veritas/logic/connective/negation'

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
veritas-0.0.2 lib/veritas/logic/connective.rb
veritas-0.0.1 lib/veritas/logic/connective.rb