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/relocation/gr_isi_id.ma".
16 include "ground/relocation/gr_pat_pat_id.ma".
18 (* IDENTITY CONDITION FOR GENERIC RELOCATION MAPS ***************************)
20 (* Advanced constructions with gr_isi ***************************************)
23 lemma gr_isi_pat (f): (∀i. @❪i,f❫ ≘ i) → 𝐈❪f❫.
24 /3 width=1 by gr_eq_id_isi, gr_pat_inv_id/
27 (* Inversions with gr_pat ***************************************************)
30 lemma gr_isi_inv_pat (f) (i): 𝐈❪f❫ → @❪i,f❫ ≘ i.
31 /3 width=3 by gr_isi_inv_eq_id, gr_pat_id, gr_pat_eq_repl_back/
34 (* Destructions with gr_pat *************************************************)
36 (*** isid_inv_at_mono *)
37 lemma gr_isi_pat_des (f) (i1) (i2): 𝐈❪f❫ → @❪i1,f❫ ≘ i2 → i1 = i2.
38 /4 width=3 by gr_isi_inv_eq_id, gr_pat_id_des, gr_pat_eq_repl_fwd/