trait Logic[A] extends BoundedDistributiveLattice[A]
Logic models a logic generally. It is a bounded distributive lattice with an extra negation operator.
The negation operator obeys the weak De Morgan laws:
- ¬(x∨y) = ¬x∧¬y
- ¬(x∧y) = ¬¬(¬x∨¬y)
For intuitionistic logic see Heyting For fuzzy logic see DeMorgan
- Self Type
- Logic[A]
- Source
- Logic.scala
Linear Supertypes
Known Subclasses
Ordering
- Alphabetic
- By Inheritance
Inherited
- Logic
- BoundedDistributiveLattice
- DistributiveLattice
- BoundedLattice
- BoundedJoinSemilattice
- BoundedMeetSemilattice
- Lattice
- MeetSemilattice
- JoinSemilattice
- Serializable
- Serializable
- Any
- Hide All
- Show All
Visibility
- Public
- All
Abstract Value Members
- abstract def and(a: A, b: A): A
-
abstract
def
getClass(): Class[_]
- Definition Classes
- Any
-
abstract
def
join(lhs: A, rhs: A): A
- Definition Classes
- JoinSemilattice
-
abstract
def
meet(lhs: A, rhs: A): A
- Definition Classes
- MeetSemilattice
- abstract def not(a: A): A
-
abstract
def
one: A
- Definition Classes
- BoundedMeetSemilattice
- abstract def or(a: A, b: A): A
-
abstract
def
zero: A
- Definition Classes
- BoundedJoinSemilattice
Concrete Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- Any
-
final
def
##(): Int
- Definition Classes
- Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- Any
-
def
asCommutativeRig: CommutativeRig[A]
Return a CommutativeRig using join and meet.
Return a CommutativeRig using join and meet. Note this must obey the commutative rig laws since meet(a, one) = a, and meet and join are associative, commutative and distributive.
- Definition Classes
- BoundedDistributiveLattice
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
dual: BoundedDistributiveLattice[A]
This is the lattice with meet and join swapped
This is the lattice with meet and join swapped
- Definition Classes
- BoundedDistributiveLattice → BoundedLattice → Lattice
-
def
equals(arg0: Any): Boolean
- Definition Classes
- Any
-
def
hashCode(): Int
- Definition Classes
- Any
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
def
isOne(a: A)(implicit ev: Eq[A]): Boolean
- Definition Classes
- BoundedMeetSemilattice
-
def
isZero(a: A)(implicit ev: Eq[A]): Boolean
- Definition Classes
- BoundedJoinSemilattice
-
def
joinPartialOrder(implicit ev: Eq[A]): PartialOrder[A]
- Definition Classes
- JoinSemilattice
-
def
joinSemilattice: BoundedSemilattice[A]
- Definition Classes
- BoundedJoinSemilattice → JoinSemilattice
-
def
meetPartialOrder(implicit ev: Eq[A]): PartialOrder[A]
- Definition Classes
- MeetSemilattice
-
def
meetSemilattice: BoundedSemilattice[A]
- Definition Classes
- BoundedMeetSemilattice → MeetSemilattice
- def nand(a: A, b: A): A
- def nor(a: A, b: A): A
- def nxor(a: A, b: A): A
-
def
toString(): String
- Definition Classes
- Any
- def xor(a: A, b: A): A