1 (**************************************************************************)
4 (* ||A|| A project by Andrea Asperti *)
6 (* ||I|| Developers: *)
7 (* ||T|| The HELM team. *)
8 (* ||A|| http://helm.cs.unibo.it *)
10 (* \ / This file is distributed under the terms of the *)
11 (* v GNU General Public License Version 2 *)
13 (**************************************************************************)
15 include "ground/lib/stream_eq.ma".
17 (* EXTENSIONAL EQUIVALENCE FOR STREAMS **************************************)
19 (* Main constructions *******************************************************)
21 corec theorem stream_eq_trans (A):
22 Transitive … (stream_eq A).
24 #a1 #a #t1 #t * #Ht1 * #a2 #t2 #H
25 cases (stream_eq_inv_cons_bi A … H) -H -a
26 /3 width=7 by stream_eq_cons/
29 theorem stream_eq_canc_sn (A):
30 ∀t,t1,t2. t ≗ t1 → t ≗ t2 → t1 ≗{A} t2.
31 /3 width=3 by stream_eq_trans, stream_eq_sym/ qed-.
33 theorem stream_eq_canc_dx (A):
34 ∀t,t1,t2. t1 ≗ t → t2 ≗ t → t1 ≗{A} t2.
35 /3 width=3 by stream_eq_trans, stream_eq_sym/ qed-.