package lrgrep

  1. Overview
  2. Docs
Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source

Module type Fix.PROPERTYSource

The signature PROPERTY is used by Fix.Make, the least fixed point computation algorithm.

type property

The type property must form a partial order, and must be equipped with a least element bottom and with an equality test equal. The partial order must satisfy the ascending chain condition: every monotone sequence must eventually stabilize.

We do not require an ordering test leq or a join operation join.

val bottom : property

bottom is the least property.

val equal : property -> property -> bool

equal p q determines whether the properties p and q are equal. In the implementation of this test, it is permitted to assume that p <= q holds.

val is_maximal : property -> bool

is_maximal p determines whether the property p is maximal with respect to the partial order. A conservative check suffices: it is always permitted for is_maximal p to be false. If is_maximal p is true, then p must have no strict upper bound. In particular, if properties form a lattice, then is_maximal p = true implies that p is the top element of the lattice.