Package edu.cornell.cs.apl.viaduct.algebra

Types

FreeDistributiveLattice
Link copied to clipboard
class FreeDistributiveLattice<A> : HeytingAlgebra<FreeDistributiveLattice<A>>

The free distributive lattice over an arbitrary set A of elements. In addition to lattice identities, the following hold:

HeytingAlgebra
Link copied to clipboard
interface HeytingAlgebra<T : HeytingAlgebra<T>> : Lattice<T>

A Heyting algebra is a bounded lattice that supports an implication operation where A → B is the greatest element x that satisfies A ∧ x ≤ B.

JoinSemiLattice
Link copied to clipboard
interface JoinSemiLattice<T : JoinSemiLattice<T>> : PartialOrder<T>

A set that supports binary least upper bounds.

Lattice
Link copied to clipboard
interface Lattice<T : Lattice<T>> : MeetSemiLattice<T> , JoinSemiLattice<T>

A set with unique least upper and greatest lower bounds.

MeetSemiLattice
Link copied to clipboard
interface MeetSemiLattice<T : MeetSemiLattice<T>> : PartialOrder<T>

A set that supports binary greatest lower bounds.

PartialOrder
Link copied to clipboard
interface PartialOrder<T>

Like Comparable, but not all pairs of elements have to be ordered.