# isLowerSemilattice -- determines if a poset is a lower (or meet) semilattice

## Synopsis

• Usage:
i = isLowerSemilattice P
• Inputs:
• P, an instance of the type Poset,
• Outputs:
• i, , whether $P$ is a lower semilattice

## Description

The poset $P$ is a lower semilattice if every pair of vertices has a unique greatest lower bound (meet).

Clearly, the $n$ chain and the $n$ booleanLattice are lower semilattices.

 i1 : n = 4; i2 : isLowerSemilattice chain n o2 = true i3 : B = booleanLattice n; i4 : isLowerSemilattice B o4 = true

The middle ranks of the $n$ booleanLattice are not lower semilattices.

 i5 : isLowerSemilattice flagPoset(B, {1,2,3}) o5 = false

However, the lower ranks of the $n$ booleanLattice are non-lattice lower semilattices.

 i6 : B' = flagPoset(B, {0,1,2,3}); i7 : isLattice B' o7 = false i8 : isLowerSemilattice B' o8 = true