DistributiveLattice

algebra.lattice.DistributiveLattice
See theDistributiveLattice companion object
trait DistributiveLattice[A] extends Lattice[A]

A distributive lattice a lattice where join and meet distribute:

  • a ∨ (b ∧ c) = (a ∨ b) ∧ (a ∨ c)

  • a ∧ (b ∨ c) = (a ∧ b) ∨ (a ∧ c)

Attributes

Companion
object
Source
DistributiveLattice.scala
Graph
Supertypes
trait Lattice[A]
trait MeetSemilattice[A]
trait JoinSemilattice[A]
trait Serializable
class Any
Known subtypes
trait Heyting[A]
trait Bool[A]
class BoolFromBoolRing[A]
class DualBool[A]
trait Logic[A]
trait DeMorgan[A]
trait GenBool[A]
class SetLattice[A]
class MinMaxLattice[A]
Show all

Members list

Value members

Inherited methods

def dual: Lattice[A]

This is the lattice with meet and join swapped

This is the lattice with meet and join swapped

Attributes

Inherited from:
Lattice
Source
Lattice.scala
def join(lhs: A, rhs: A): A

Attributes

Inherited from:
JoinSemilattice
Source
JoinSemilattice.scala
def joinPartialOrder(implicit ev: Eq[A]): PartialOrder[A]

Attributes

Inherited from:
JoinSemilattice
Source
JoinSemilattice.scala

Attributes

Inherited from:
JoinSemilattice
Source
JoinSemilattice.scala
def meet(lhs: A, rhs: A): A

Attributes

Inherited from:
MeetSemilattice
Source
MeetSemilattice.scala
def meetPartialOrder(implicit ev: Eq[A]): PartialOrder[A]

Attributes

Inherited from:
MeetSemilattice
Source
MeetSemilattice.scala

Attributes

Inherited from:
MeetSemilattice
Source
MeetSemilattice.scala