(************************************************************************) (* v * The Coq Proof Assistant / The Coq Development Team *) (* U -> Prop. Variable R: Relation. Definition Reflexive : Prop := (x: U) (R x x). Definition Transitive : Prop := (x,y,z: U) (R x y) -> (R y z) -> (R x z). Definition Symmetric : Prop := (x,y: U) (R x y) -> (R y x). Definition Antisymmetric : Prop := (x: U) (y: U) (R x y) -> (R y x) -> x == y. Definition contains : Relation -> Relation -> Prop := [R,R': Relation] (x: U) (y: U) (R' x y) -> (R x y). Definition same_relation : Relation -> Relation -> Prop := [R,R': Relation] (contains R R') /\ (contains R' R). Inductive Preorder : Prop := Definition_of_preorder: Reflexive -> Transitive -> Preorder. Inductive Order : Prop := Definition_of_order: Reflexive -> Transitive -> Antisymmetric -> Order. Inductive Equivalence : Prop := Definition_of_equivalence: Reflexive -> Transitive -> Symmetric -> Equivalence. Inductive PER : Prop := Definition_of_PER: Symmetric -> Transitive -> PER. End Relations_1. Hints Unfold Reflexive Transitive Antisymmetric Symmetric contains same_relation : sets v62. Hints Resolve Definition_of_preorder Definition_of_order Definition_of_equivalence Definition_of_PER : sets v62.