Orders knowledge by its information content.

Order.partial is a generalization of the total order, which is used to compare the amount of information in two specifications of knowledge.

Note: The information content of a value ordering shall not be confused with any other intrinsic ordering of the associated value type. For example, if we will take age, measured in natural numbers, then the order natural numbers has nothing to do with the amount of information associated with each age. From the knowledge representation perspective. We either do not know the age, or know it to some certainty. Therefore, the domain representation could be either int option, with None being the minimal element (denoting an absence of knowledge about the age of an object) or Some x, s.t., order (Some x) (Some y) = NC iff x <> y, i.e., neither is having more or less knowledge than another.

type partial =
  1. | LT
  2. | EQ
  3. | GT
  4. | NC

partial ordering for two way comparison.

The semantics of constructors:

  • LT - strictly less information
  • GT - strictly more information
  • EQ - equal informational content
  • NC - non-comparable entities
module type S = sig ... end