Notation redundU := (TRANS.redundU Trans).Notation redundU2 := (TRANS.redundU2 Trans).Notation redundD := (TRANS.redundD Trans).(*Notation clauseset := ({set clause}).*)
Definition clauseset := set_finType clause.(* a derivation is the graph induced by the refl. transitive closure of trans *)
Notation deriv := (connect trans).

(* Specifications: *)
Lemma deriv0 (s: clauseset) : deriv s s.
Lemma deriv1 {s s'' s': clauseset} : trans s s'' -> deriv s'' s' -> deriv s s'.
Lemma deriv_trans {s s'' s': clauseset} : deriv s s'' -> deriv s'' s' -> deriv s s'.
Lemma deriv_plus1 {s s'' s': clauseset} : trans s s'' -> deriv s'' s' -> deriv_plus s s'.
Lemma deriv_plus_trans {s s'' s': clauseset} : deriv_plus s s'' -> deriv_plus s'' s' -> deriv_plus s s'.