Module Type BOOLEAN_ALGEBRA.
Parameters (t:Type) (Ord : t -> t -> Prop)
(top bot : t) (lub glb : t -> t -> t) (comp : t -> t).
Declare Scope ba.
Delimit Scope ba with ba. Open Scope ba.
Notation "x <= y" := (Ord x y) (at level 70, no associativity) : ba.

Axiom lub_upper1 : forall x y, x <= (lub x y).
Axiom lub_upper2 : forall x y, y <= (lub x y).
Axiom lub_least : forall x y z, x <= z -> y <= z -> (lub x y) <= z.