Section setX.
Variables X : elementType.
Implicit Types (x y : X) (A B C : set X).
Definition inE := ((in_set0, in_set1, in_setU, in_setI, in_setD), inE).
Definition subset_trans B A C := (@le_trans _ _ B A C).
Definition proper_trans B A C := (@lt_trans _ _ B A C).
Definition sub_proper_trans B A C := (@le_lt_trans _ _ B A C).
Definition proper_sub_trans B A C := (@lt_le_trans _ _ B A C).
Definition proper_sub A B := (@ltW _ _ A B).
Arguments setIidPl {A B}.

Lemma properU A B C : (B :|: C \proper A) -> (B \proper A) && (C \proper A).