]> matita.cs.unibo.it Git - helm.git/commitdiff
update in ground and static_2
authorFerruccio Guidi <ferruccio.guidi@unibo.it>
Tue, 29 Jun 2021 16:31:37 +0000 (18:31 +0200)
committerFerruccio Guidi <ferruccio.guidi@unibo.it>
Tue, 29 Jun 2021 16:31:37 +0000 (18:31 +0200)
+ notation update for tail function
+ predefined virtuals: one symbol added

60 files changed:
matita/matita/contribs/lambdadelta/apps_2/web/apps_2_src.tbl
matita/matita/contribs/lambdadelta/ground/lib/stream_hdtl.ma
matita/matita/contribs/lambdadelta/ground/lib/stream_tls.ma
matita/matita/contribs/lambdadelta/ground/lib/stream_tls_eq.ma
matita/matita/contribs/lambdadelta/ground/notation/functions/downdashedarrow_2.ma [new file with mode: 0644]
matita/matita/contribs/lambdadelta/ground/notation/functions/downdashedarrowstar_3.ma [new file with mode: 0644]
matita/matita/contribs/lambdadelta/ground/notation/functions/downspoon_1.ma [new file with mode: 0644]
matita/matita/contribs/lambdadelta/ground/notation/functions/downspoon_2.ma [deleted file]
matita/matita/contribs/lambdadelta/ground/notation/functions/downspoonstar_2.ma [new file with mode: 0644]
matita/matita/contribs/lambdadelta/ground/notation/functions/downspoonstar_3.ma [deleted file]
matita/matita/contribs/lambdadelta/ground/notation/functions/droppred_1.ma [deleted file]
matita/matita/contribs/lambdadelta/ground/notation/functions/droppreds_2.ma [deleted file]
matita/matita/contribs/lambdadelta/ground/relocation/gr_after_after_ist.ma
matita/matita/contribs/lambdadelta/ground/relocation/gr_after_nat_uni_tls.ma
matita/matita/contribs/lambdadelta/ground/relocation/gr_after_pat_tls.ma
matita/matita/contribs/lambdadelta/ground/relocation/gr_after_pat_uni_tls.ma
matita/matita/contribs/lambdadelta/ground/relocation/gr_coafter.ma
matita/matita/contribs/lambdadelta/ground/relocation/gr_coafter_coafter_ist.ma
matita/matita/contribs/lambdadelta/ground/relocation/gr_coafter_nat_tls.ma
matita/matita/contribs/lambdadelta/ground/relocation/gr_coafter_nat_tls_pushs.ma
matita/matita/contribs/lambdadelta/ground/relocation/gr_coafter_pat_tls.ma
matita/matita/contribs/lambdadelta/ground/relocation/gr_isd_tl.ma
matita/matita/contribs/lambdadelta/ground/relocation/gr_isd_tls.ma
matita/matita/contribs/lambdadelta/ground/relocation/gr_isf_tl.ma
matita/matita/contribs/lambdadelta/ground/relocation/gr_isf_tls.ma
matita/matita/contribs/lambdadelta/ground/relocation/gr_isi_tl.ma
matita/matita/contribs/lambdadelta/ground/relocation/gr_isi_tls.ma
matita/matita/contribs/lambdadelta/ground/relocation/gr_ist.ma
matita/matita/contribs/lambdadelta/ground/relocation/gr_ist_tls.ma
matita/matita/contribs/lambdadelta/ground/relocation/gr_isu_tl.ma
matita/matita/contribs/lambdadelta/ground/relocation/gr_pat_lt.ma
matita/matita/contribs/lambdadelta/ground/relocation/gr_pat_tls.ma
matita/matita/contribs/lambdadelta/ground/relocation/gr_sle.ma
matita/matita/contribs/lambdadelta/ground/relocation/gr_sle_tls.ma
matita/matita/contribs/lambdadelta/ground/relocation/gr_sor.ma
matita/matita/contribs/lambdadelta/ground/relocation/gr_sor_tls.ma
matita/matita/contribs/lambdadelta/ground/relocation/gr_tl.ma
matita/matita/contribs/lambdadelta/ground/relocation/gr_tl_eq.ma
matita/matita/contribs/lambdadelta/ground/relocation/gr_tls.ma
matita/matita/contribs/lambdadelta/ground/relocation/gr_tls_eq.ma
matita/matita/contribs/lambdadelta/ground/relocation/gr_tls_nexts_eq.ma
matita/matita/contribs/lambdadelta/ground/relocation/gr_tls_pushs.ma
matita/matita/contribs/lambdadelta/ground/relocation/gr_tls_pushs_eq.ma
matita/matita/contribs/lambdadelta/ground/web/ground_src.tbl
matita/matita/contribs/lambdadelta/static_2/relocation/drops.ma
matita/matita/contribs/lambdadelta/static_2/relocation/drops_sex.ma
matita/matita/contribs/lambdadelta/static_2/relocation/seq.ma
matita/matita/contribs/lambdadelta/static_2/relocation/sex.ma
matita/matita/contribs/lambdadelta/static_2/relocation/sex_sex.ma
matita/matita/contribs/lambdadelta/static_2/static/frees.ma
matita/matita/contribs/lambdadelta/static_2/static/frees_drops.ma
matita/matita/contribs/lambdadelta/static_2/static/frees_fqup.ma
matita/matita/contribs/lambdadelta/static_2/static/fsle.ma
matita/matita/contribs/lambdadelta/static_2/static/fsle_drops.ma
matita/matita/contribs/lambdadelta/static_2/static/fsle_fqup.ma
matita/matita/contribs/lambdadelta/static_2/static/fsle_fsle.ma
matita/matita/contribs/lambdadelta/static_2/static/lsubf.ma
matita/matita/contribs/lambdadelta/static_2/static/rex_drops.ma
matita/matita/contribs/lambdadelta/static_2/static/rex_rex.ma
matita/matita/predefined_virtuals.ml

index 76794da82e6b3d4ce2cf33740c18665f101ea6cb..2c781ef57173290002e53be1af102f5936e2f784 100644 (file)
@@ -83,7 +83,7 @@ class "capitalize italic" { 0 }
 class "italic"            { 1 }
 (*
         [ { "evaluation drop" * } {
-             [ "vdrop" + "( â«°{?}? )" + "( â«°{?}[?]? )" "vdrop_vlift" * ]
+             [ "vdrop" + "( â\87£{?}? )" + "( â\87£{?}[?]? )" "vdrop_vlift" * ]
           }
         ]
         [ { "reduction and type machine" * } {
index 5ddd583d1112a74493c882a3f2506286f38f9428..a23cb4ca8caab2ef31e6eeb7598ead4986d5cf10 100644 (file)
@@ -12,7 +12,7 @@
 (*                                                                        *)
 (**************************************************************************)
 
-include "ground/notation/functions/downspoon_2.ma".
+include "ground/notation/functions/downdashedarrow_2.ma".
 include "ground/lib/stream.ma".
 
 (* HEAD AND TAIL FOR STREAMS ************************************************)
@@ -27,7 +27,7 @@ defined.
 
 interpretation
   "tail (streams)"
-  'DownSpoon A t = (stream_tl A t).
+  'DownDashedArrow A t = (stream_tl A t).
 
 (* Basic constructions ******************************************************)
 
@@ -36,10 +36,10 @@ lemma stream_hd_cons (A) (a) (t):
 // qed.
 
 lemma stream_tl_cons (A) (a) (t):
-      t = â«°{A}(a⨮t).
+      t = â\87£{A}(a⨮t).
 // qed.
 
 lemma stream_split_tl (A) (t):
-      stream_hd A t â¨® â«°t = t.
+      stream_hd A t â¨® â\87£t = t.
 #A * //
 qed.
index 185de605e6ac1b4ec96984630311e0ca8d226b70..670790c914e74ca46928b2500303a39c37b1fe6f 100644 (file)
@@ -12,7 +12,7 @@
 (*                                                                        *)
 (**************************************************************************)
 
-include "ground/notation/functions/downspoonstar_3.ma".
+include "ground/notation/functions/downdashedarrowstar_3.ma".
 include "ground/lib/stream_hdtl.ma".
 include "ground/arith/nat_succ_iter.ma".
 
@@ -23,26 +23,26 @@ definition stream_tls (A) (n): stream A → stream A ≝
 
 interpretation
   "iterated tail (strams)"
-  'DownSpoonStar A n f = (stream_tls A n f).
+  'DownDashedArrowStar A n f = (stream_tls A n f).
 
 (* Basic constructions ******************************************************)
 
 lemma stream_tls_zero (A) (t):
-      t = â«°*{A}[𝟎]t.
+      t = â\87£*{A}[𝟎]t.
 // qed.
 
 lemma stream_tls_tl (A) (n) (t):
-      (â«°â«°*[n]t) = â«°*{A}[n]â«°t.
+      (â\87£â\87£*[n]t) = â\87£*{A}[n]â\87£t.
 #A #n #t
 @(niter_appl … (stream_tl …))
 qed.
 
 lemma stream_tls_succ (A) (n) (t):
-      (â«°â«°*[n]t) = â«°*{A}[↑n]t.
+      (â\87£â\87£*[n]t) = â\87£*{A}[↑n]t.
 #A #n #t
 @(niter_succ … (stream_tl …))
 qed.
 
 lemma stream_tls_swap (A) (n) (t):
-      (â«°*[n]â«°t) = â«°*{A}[↑n]t.
+      (â\87£*[n]â\87£t) = â\87£*{A}[↑n]t.
 // qed.
index 0f65086e521954324063589e2b7dcf84db209322..de88a638b1d4889a4d3721a94e5d9db456937193 100644 (file)
@@ -20,7 +20,7 @@ include "ground/lib/stream_tls.ma".
 (* Constructions with stream_eq *********************************************)
 
 lemma stream_tls_eq_repl (A) (n):
-      stream_eq_repl A (λt1,t2. â«°*[n] t1 â\89\97 â«°*[n] t2).
+      stream_eq_repl A (λt1,t2. â\87£*[n] t1 â\89\97 â\87£*[n] t2).
 #A #n @(nat_ind_succ … n) -n //
 #n #IH * #n1 #t1 * #n2 #t2 #H
 elim (stream_eq_inv_cons_bi … H) /2 width=7 by/
diff --git a/matita/matita/contribs/lambdadelta/ground/notation/functions/downdashedarrow_2.ma b/matita/matita/contribs/lambdadelta/ground/notation/functions/downdashedarrow_2.ma
new file mode 100644 (file)
index 0000000..4614cf3
--- /dev/null
@@ -0,0 +1,27 @@
+(**************************************************************************)
+(*       ___                                                              *)
+(*      ||M||                                                             *)
+(*      ||A||       A project by Andrea Asperti                           *)
+(*      ||T||                                                             *)
+(*      ||I||       Developers:                                           *)
+(*      ||T||         The HELM team.                                      *)
+(*      ||A||         http://helm.cs.unibo.it                             *)
+(*      \   /                                                             *)
+(*       \ /        This file is distributed under the terms of the       *)
+(*        v         GNU General Public License Version 2                  *)
+(*                                                                        *)
+(**************************************************************************)
+
+(* GROUND NOTATION **********************************************************)
+
+notation < "hvbox( ⇣ term 75 a )"
+  non associative with precedence 75
+  for @{ 'DownDashedArrow $S $a }.
+
+notation > "hvbox( ⇣ term 75 a )"
+  non associative with precedence 75
+  for @{ 'DownDashedArrow ? $a }.
+
+notation > "hvbox( ⇣{ term 46 S } break term 75 a )"
+  non associative with precedence 75
+  for @{ 'DownDashedArrow $S $a }.
diff --git a/matita/matita/contribs/lambdadelta/ground/notation/functions/downdashedarrowstar_3.ma b/matita/matita/contribs/lambdadelta/ground/notation/functions/downdashedarrowstar_3.ma
new file mode 100644 (file)
index 0000000..9196951
--- /dev/null
@@ -0,0 +1,27 @@
+(**************************************************************************)
+(*       ___                                                              *)
+(*      ||M||                                                             *)
+(*      ||A||       A project by Andrea Asperti                           *)
+(*      ||T||                                                             *)
+(*      ||I||       Developers:                                           *)
+(*      ||T||         The HELM team.                                      *)
+(*      ||A||         http://helm.cs.unibo.it                             *)
+(*      \   /                                                             *)
+(*       \ /        This file is distributed under the terms of the       *)
+(*        v         GNU General Public License Version 2                  *)
+(*                                                                        *)
+(**************************************************************************)
+
+(* GROUND NOTATION **********************************************************)
+
+notation < "hvbox( ⇣*[ break term 46 n ] break term 75 a )"
+  non associative with precedence 75
+  for @{ 'DownDashedArrowStar $S $n $a }.
+
+notation > "hvbox( ⇣*[ break term 46 n ] break term 75 a )"
+  non associative with precedence 75
+  for @{ 'DownDashedArrowStar ? $n $a }.
+
+notation > "hvbox( ⇣*{ term 46 S }[ break term 46 n ] break term 75 a )"
+  non associative with precedence 75
+  for @{ 'DownDashedArrowStar $S $n $a }.
diff --git a/matita/matita/contribs/lambdadelta/ground/notation/functions/downspoon_1.ma b/matita/matita/contribs/lambdadelta/ground/notation/functions/downspoon_1.ma
new file mode 100644 (file)
index 0000000..e4bc3eb
--- /dev/null
@@ -0,0 +1,19 @@
+(**************************************************************************)
+(*       ___                                                              *)
+(*      ||M||                                                             *)
+(*      ||A||       A project by Andrea Asperti                           *)
+(*      ||T||                                                             *)
+(*      ||I||       Developers:                                           *)
+(*      ||T||         The HELM team.                                      *)
+(*      ||A||         http://helm.cs.unibo.it                             *)
+(*      \   /                                                             *)
+(*       \ /        This file is distributed under the terms of the       *)
+(*        v         GNU General Public License Version 2                  *)
+(*                                                                        *)
+(**************************************************************************)
+
+(* GROUND NOTATION **********************************************************)
+
+notation "hvbox( ⫰ term 75 T )"
+  non associative with precedence 75
+  for @{ 'DownSpoon $T }.
diff --git a/matita/matita/contribs/lambdadelta/ground/notation/functions/downspoon_2.ma b/matita/matita/contribs/lambdadelta/ground/notation/functions/downspoon_2.ma
deleted file mode 100644 (file)
index 765c2c0..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-(**************************************************************************)
-(*       ___                                                              *)
-(*      ||M||                                                             *)
-(*      ||A||       A project by Andrea Asperti                           *)
-(*      ||T||                                                             *)
-(*      ||I||       Developers:                                           *)
-(*      ||T||         The HELM team.                                      *)
-(*      ||A||         http://helm.cs.unibo.it                             *)
-(*      \   /                                                             *)
-(*       \ /        This file is distributed under the terms of the       *)
-(*        v         GNU General Public License Version 2                  *)
-(*                                                                        *)
-(**************************************************************************)
-
-(* GROUND NOTATION **********************************************************)
-
-notation < "hvbox( ⫰ term 75 a )"
-  non associative with precedence 75
-  for @{ 'DownSpoon $S $a }.
-
-notation > "hvbox( ⫰ term 75 a )"
-  non associative with precedence 75
-  for @{ 'DownSpoon ? $a }.
-
-notation > "hvbox( ⫰{ term 46 S } break term 75 a )"
-  non associative with precedence 75
-  for @{ 'DownSpoon $S $a }.
diff --git a/matita/matita/contribs/lambdadelta/ground/notation/functions/downspoonstar_2.ma b/matita/matita/contribs/lambdadelta/ground/notation/functions/downspoonstar_2.ma
new file mode 100644 (file)
index 0000000..03f188b
--- /dev/null
@@ -0,0 +1,19 @@
+(**************************************************************************)
+(*       ___                                                              *)
+(*      ||M||                                                             *)
+(*      ||A||       A project by Andrea Asperti                           *)
+(*      ||T||                                                             *)
+(*      ||I||       Developers:                                           *)
+(*      ||T||         The HELM team.                                      *)
+(*      ||A||         http://helm.cs.unibo.it                             *)
+(*      \   /                                                             *)
+(*       \ /        This file is distributed under the terms of the       *)
+(*        v         GNU General Public License Version 2                  *)
+(*                                                                        *)
+(**************************************************************************)
+
+(* GROUND NOTATION **********************************************************)
+
+notation "hvbox( ⫰ *[ term 46 n ] break term 75 T )"
+  non associative with precedence 75
+  for @{ 'DownSpoonStar $n $T }.
diff --git a/matita/matita/contribs/lambdadelta/ground/notation/functions/downspoonstar_3.ma b/matita/matita/contribs/lambdadelta/ground/notation/functions/downspoonstar_3.ma
deleted file mode 100644 (file)
index 5250539..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-(**************************************************************************)
-(*       ___                                                              *)
-(*      ||M||                                                             *)
-(*      ||A||       A project by Andrea Asperti                           *)
-(*      ||T||                                                             *)
-(*      ||I||       Developers:                                           *)
-(*      ||T||         The HELM team.                                      *)
-(*      ||A||         http://helm.cs.unibo.it                             *)
-(*      \   /                                                             *)
-(*       \ /        This file is distributed under the terms of the       *)
-(*        v         GNU General Public License Version 2                  *)
-(*                                                                        *)
-(**************************************************************************)
-
-(* GROUND NOTATION **********************************************************)
-
-notation < "hvbox( ⫰*[ break term 46 n ] break term 75 a )"
-  non associative with precedence 75
-  for @{ 'DownSpoonStar $S $n $a }.
-
-notation > "hvbox( ⫰*[ break term 46 n ] break term 75 a )"
-  non associative with precedence 75
-  for @{ 'DownSpoonStar ? $n $a }.
-
-notation > "hvbox( ⫰*{ term 46 S }[ break term 46 n ] break term 75 a )"
-  non associative with precedence 75
-  for @{ 'DownSpoonStar $S $n $a }.
diff --git a/matita/matita/contribs/lambdadelta/ground/notation/functions/droppred_1.ma b/matita/matita/contribs/lambdadelta/ground/notation/functions/droppred_1.ma
deleted file mode 100644 (file)
index d4e0f03..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-(**************************************************************************)
-(*       ___                                                              *)
-(*      ||M||                                                             *)
-(*      ||A||       A project by Andrea Asperti                           *)
-(*      ||T||                                                             *)
-(*      ||I||       Developers:                                           *)
-(*      ||T||         The HELM team.                                      *)
-(*      ||A||         http://helm.cs.unibo.it                             *)
-(*      \   /                                                             *)
-(*       \ /        This file is distributed under the terms of the       *)
-(*        v         GNU General Public License Version 2                  *)
-(*                                                                        *)
-(**************************************************************************)
-
-(* GROUND NOTATION **********************************************************)
-
-notation "hvbox( ⫱ term 75 T )"
-  non associative with precedence 75
-  for @{ 'DropPred $T }.
diff --git a/matita/matita/contribs/lambdadelta/ground/notation/functions/droppreds_2.ma b/matita/matita/contribs/lambdadelta/ground/notation/functions/droppreds_2.ma
deleted file mode 100644 (file)
index 86829e0..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-(**************************************************************************)
-(*       ___                                                              *)
-(*      ||M||                                                             *)
-(*      ||A||       A project by Andrea Asperti                           *)
-(*      ||T||                                                             *)
-(*      ||I||       Developers:                                           *)
-(*      ||T||         The HELM team.                                      *)
-(*      ||A||         http://helm.cs.unibo.it                             *)
-(*      \   /                                                             *)
-(*       \ /        This file is distributed under the terms of the       *)
-(*        v         GNU General Public License Version 2                  *)
-(*                                                                        *)
-(**************************************************************************)
-
-(* GROUND NOTATION **********************************************************)
-
-notation "hvbox( ⫱ *[ term 46 n ] break term 75 T )"
-  non associative with precedence 75
-  for @{ 'DropPreds $n $T }.
index c8051078ac525267840437e88eb8ddf37468cfad..ecca35eb73ab0e0858c348f8dec0e0fd63522f32 100644 (file)
@@ -39,7 +39,7 @@ cases (gr_after_inv_push_sn … H1f … H1) -H1f * #g21 #g #H1g #H21 #H
 | cases (gr_after_inv_push_sn_next … H2f … H1 H) -f1 -f #g22 #H2g #H22
   @(gr_eq_next … H21 H22) -f21 -f22
 ]
-@(gr_after_inj_unit_aux (⫱*[â\86\93p]g1) â\80¦ (⫱*[↓p]g)) -gr_after_inj_unit_aux
+@(gr_after_inj_unit_aux (â«°*[â\86\93p]g1) â\80¦ (â«°*[↓p]g)) -gr_after_inj_unit_aux
 /2 width=1 by gr_after_tls_sn_tls, gr_ist_tls, gr_pat_unit_succ_tls/
 qed-.
 
index cef9bd7e4054cab32bef9558e94ec5a2a29bb65b..632d35f6c1bc11cb7cdbcb89dab28abb37a2c764 100644 (file)
@@ -24,7 +24,7 @@ include "ground/relocation/gr_after_isi.ma".
 (*** after_uni_dx *)
 lemma gr_after_nat_uni (l2) (l1):
       ∀f2. @↑❪l1, f2❫ ≘ l2 →
-      â\88\80f. f2 â\8a\9a ð\9d\90®â\9d¨l1â\9d© â\89\98 f â\86\92 ð\9d\90®â\9d¨l2â\9d© â\8a\9a â«±*[l2] f2 ≘ f.
+      â\88\80f. f2 â\8a\9a ð\9d\90®â\9d¨l1â\9d© â\89\98 f â\86\92 ð\9d\90®â\9d¨l2â\9d© â\8a\9a â«°*[l2] f2 ≘ f.
 #l2 @(nat_ind_succ … l2) -l2
 [ #l1 #f2 #Hf2 #f #Hf
   elim (gr_nat_inv_zero_dx … Hf2) -Hf2 // #g2 #H1 #H2 destruct
@@ -45,7 +45,7 @@ qed.
 (*** after_uni_sn *)
 lemma gr_nat_after_uni_tls (l2) (l1):
       ∀f2. @↑❪l1, f2❫ ≘ l2 →
-      â\88\80f. ð\9d\90®â\9d¨l2â\9d© â\8a\9a â«±*[l2] f2 ≘ f → f2 ⊚ 𝐮❨l1❩ ≘ f.
+      â\88\80f. ð\9d\90®â\9d¨l2â\9d© â\8a\9a â«°*[l2] f2 ≘ f → f2 ⊚ 𝐮❨l1❩ ≘ f.
 #l2 @(nat_ind_succ … l2) -l2
 [ #l1 #f2 #Hf2 #f #Hf
   elim (gr_nat_inv_zero_dx … Hf2) -Hf2 // #g2 #H1 #H2 destruct
index b7b5fc7fb140eb37ad98b3b8ea5025f7dcfd3c30..4c0623e6ef9b42f621d57149d1b87a9917e9826a 100644 (file)
@@ -24,7 +24,7 @@ include "ground/relocation/gr_after.ma".
 (*** after_tls *)
 lemma gr_after_tls_sn_tls (n):
       ∀f1,f2,f. @❪𝟏, f1❫ ≘ ↑n →
-      f1 â\8a\9a f2 â\89\98 f â\86\92 â«±*[n]f1 â\8a\9a f2 â\89\98 â«±*[n]f.
+      f1 â\8a\9a f2 â\89\98 f â\86\92 â«°*[n]f1 â\8a\9a f2 â\89\98 â«°*[n]f.
 #n @(nat_ind_succ … n) -n //
 #n #IH #f1 #f2 #f #Hf1 #Hf
 cases (gr_pat_inv_unit_succ … Hf1) -Hf1 [ |*: // ] #g1 #Hg1 #H1
index 40853b262e94f95146df3bcada4e520a35a2479b..fe12866684e6844f83cc7b839f6e4f01dcf165a2 100644 (file)
@@ -25,7 +25,7 @@ include "ground/relocation/gr_after_isi.ma".
 (*** after_uni_succ_dx *)
 lemma gr_after_pat_uni (i2) (i1):
       ∀f2. @❪i1, f2❫ ≘ i2 →
-      â\88\80f. f2 â\8a\9a ð\9d\90®â\9d¨i1â\9d© â\89\98 f â\86\92 ð\9d\90®â\9d¨i2â\9d© â\8a\9a â«±*[i2] f2 ≘ f.
+      â\88\80f. f2 â\8a\9a ð\9d\90®â\9d¨i1â\9d© â\89\98 f â\86\92 ð\9d\90®â\9d¨i2â\9d© â\8a\9a â«°*[i2] f2 ≘ f.
 #i2 elim i2 -i2
 [ #i1 #f2 #Hf2 #f #Hf
   elim (gr_pat_inv_unit_dx … Hf2) -Hf2 // #g2 #H1 #H2 destruct
@@ -47,7 +47,7 @@ qed.
 (*** after_uni_succ_sn *)
 lemma gr_pat_after_uni_tls (i2) (i1):
       ∀f2. @❪i1, f2❫ ≘ i2 →
-      â\88\80f. ð\9d\90®â\9d¨i2â\9d© â\8a\9a â«±*[i2] f2 ≘ f → f2 ⊚ 𝐮❨i1❩ ≘ f.
+      â\88\80f. ð\9d\90®â\9d¨i2â\9d© â\8a\9a â«°*[i2] f2 ≘ f → f2 ⊚ 𝐮❨i1❩ ≘ f.
 #i2 elim i2 -i2
 [ #i1 #f2 #Hf2 #f #Hf
   elim (gr_pat_inv_unit_dx … Hf2) -Hf2 // #g2 #H1 #H2 destruct
index bbac0036c1def3567371095c38b4e3f7b1b406aa..2ec6991cf31f9e9f4ce6d2063ef847dbba8f8a6e 100644 (file)
@@ -217,8 +217,8 @@ qed-.
 
 (*** coafter_inv_tl1 *)
 lemma gr_coafter_inv_tl_dx:
-      â\88\80g2,g1,g. g2 ~â\8a\9a â«±g1 ≘ g →
-      â\88\83â\88\83f. â«¯g2 ~â\8a\9a g1 â\89\98 f & â«±f = g.
+      â\88\80g2,g1,g. g2 ~â\8a\9a â«°g1 ≘ g →
+      â\88\83â\88\83f. â«¯g2 ~â\8a\9a g1 â\89\98 f & â«°f = g.
 #g2 #g1 #g
 elim (gr_map_split_tl g1) #H1 #H2
 [ /3 width=7 by gr_coafter_refl, ex2_intro/
@@ -228,8 +228,8 @@ qed-.
 
 (*** coafter_inv_tl0 *)
 lemma gr_coafter_inv_tl:
-      â\88\80g2,g1,g. g2 ~â\8a\9a g1 â\89\98 â«±g →
-      â\88\83â\88\83f1. â«¯g2 ~â\8a\9a f1 â\89\98 g & â«±f1 = g1.
+      â\88\80g2,g1,g. g2 ~â\8a\9a g1 â\89\98 â«°g →
+      â\88\83â\88\83f1. â«¯g2 ~â\8a\9a f1 â\89\98 g & â«°f1 = g1.
 #g2 #g1 #g
 elim (gr_map_split_tl g) #H1 #H2
 [ /3 width=7 by gr_coafter_refl, ex2_intro/
index f1e633463ee15c2955343414b9f36181c395a9d9..9d79801dc849c943fb203a4a0c9cdd110f833af0 100644 (file)
@@ -38,7 +38,7 @@ cases (gr_coafter_inv_push_sn … H1f … H1) -H1f * #g21 #g #H1g #H21 #H
 | cases (gr_coafter_inv_push_sn_next … H2f … H1 H) -f1 -f #g22 #H2g #H22
   @(gr_eq_next … H21 H22) -f21 -f22
 ]
-@(gr_coafter_inj_unit_aux (⫱*[â\86\93n]g1) â\80¦ (⫱*[↓n]g)) -gr_coafter_inj_unit_aux
+@(gr_coafter_inj_unit_aux (â«°*[â\86\93n]g1) â\80¦ (â«°*[↓n]g)) -gr_coafter_inj_unit_aux
 /2 width=1 by gr_coafter_tls_bi_tls, gr_ist_tls, gr_pat_unit_succ_tls/
 qed-.
 
index 6d953f203f9ea589f749d216d70a8572cbff5503..0402e2929db2fca38b107edd0af2f52e77037bcd 100644 (file)
@@ -23,7 +23,7 @@ include "ground/relocation/gr_coafter.ma".
 (*** coafter_tls *)
 lemma gr_coafter_tls_bi_tls (n2) (n1):
       ∀f1,f2,f. @↑❪n1, f1❫ ≘ n2 →
-      f1 ~â\8a\9a f2 â\89\98 f â\86\92 â«±*[n2]f1 ~â\8a\9a â«±*[n1]f2 â\89\98 â«±*[n2]f.
+      f1 ~â\8a\9a f2 â\89\98 f â\86\92 â«°*[n2]f1 ~â\8a\9a â«°*[n1]f2 â\89\98 â«°*[n2]f.
 #n2 @(nat_ind_succ … n2) -n2 [ #n1 | #n2 #IH * [| #n1 ] ] #f1 #f2 #f #Hf1 #Hf
 [ elim (gr_nat_inv_zero_dx … Hf1) -Hf1 [ |*: // ] #g1 #Hg1 #H1 destruct //
 | elim (gr_nat_inv_zero_succ … Hf1) -Hf1 [ |*: // ] #g1 #Hg1 #H1
@@ -41,5 +41,5 @@ qed.
 (*** coafter_tls_O *)
 lemma gr_coafter_tls_sn_tls:
       ∀n,f1,f2,f. @↑❪𝟎, f1❫ ≘ n →
-      f1 ~â\8a\9a f2 â\89\98 f â\86\92 â«±*[n]f1 ~â\8a\9a f2 â\89\98 â«±*[n]f.
+      f1 ~â\8a\9a f2 â\89\98 f â\86\92 â«°*[n]f1 ~â\8a\9a f2 â\89\98 â«°*[n]f.
 /2 width=1 by gr_coafter_tls_bi_tls/ qed.
index 524e1d881a16c9a8b51584c7e2afd141221a6dbd..d42709290ceb57ba6e448211d9270c05101f68ee 100644 (file)
@@ -24,7 +24,7 @@ include "ground/relocation/gr_coafter.ma".
 (*** coafter_fwd_pushs *)
 lemma gr_coafter_des_pushs_dx (n) (m):
       ∀g2,f1,g. g2 ~⊚ ⫯*[m]f1 ≘ g → @↑❪m, g2❫ ≘ n →
-      â\88\83â\88\83f. â«±*[n]g2 ~⊚ f1 ≘ f & ⫯*[n] f = g.
+      â\88\83â\88\83f. â«°*[n]g2 ~⊚ f1 ≘ f & ⫯*[n] f = g.
 #n @(nat_ind_succ … n) -n
 [ #m #g2 #f1 #g #Hg #H
   elim (gr_nat_inv_zero_dx … H) -H [|*: // ] #f2 #H1 #H2 destruct
index a2c00145b00bdbf3d4231813ccc4a71adb3ecc47..529b4caa53a9ef90ccc6c7c9adfde41b9c6da2ec 100644 (file)
@@ -23,7 +23,7 @@ include "ground/relocation/gr_coafter_nat_tls.ma".
 (*** coafter_tls_succ *)
 lemma gr_coafter_tls_tl_tls:
       ∀g2,g1,g. g2 ~⊚ g1 ≘ g →
-      â\88\80j. @â\9dªð\9d\9f\8f, g2â\9d« â\89\98 j â\86\92 â«±*[j]g2 ~â\8a\9a â«±g1 â\89\98 â«±*[j]g.
+      â\88\80j. @â\9dªð\9d\9f\8f, g2â\9d« â\89\98 j â\86\92 â«°*[j]g2 ~â\8a\9a â«°g1 â\89\98 â«°*[j]g.
 #g2 #g1 #g #Hg #j #Hg2
 lapply (gr_nat_pred_bi … Hg2) -Hg2 #Hg2
 lapply (gr_coafter_tls_bi_tls … Hg2 … Hg) -Hg #Hg
@@ -36,7 +36,7 @@ qed.
 (* Note: parked for now
 lemma coafter_fwd_xpx_pushs:
       ∀g2,f1,g,i,j. @❪i, g2❫ ≘ j → g2 ~⊚ ⫯*[i]⫯f1 ≘ g →
-      â\88\83â\88\83f.  â«±*[↑j]g2 ~⊚ f1 ≘ f & ⫯*[j]⫯f = g.
+      â\88\83â\88\83f.  â«°*[↑j]g2 ~⊚ f1 ≘ f & ⫯*[j]⫯f = g.
 #g2 #g1 #g #i #j #Hg2 <pushs_xn #Hg(coafter_fwd_pushs … Hg Hg2) #f #H0 destruct
 lapply (coafter_tls … Hg2 Hg) -Hg <tls_pushs <tls_pushs #Hf
 lapply (at_inv_tls … Hg2) -Hg2 #H
@@ -47,7 +47,7 @@ qed-.
 
 lemma coafter_fwd_xnx_pushs:
       ∀g2,f1,g,i,j. @❪i, g2❫ ≘ j → g2 ~⊚ ⫯*[i]↑f1 ≘ g →
-      â\88\83â\88\83f. â«±*[↑j]g2 ~⊚ f1 ≘ f & ⫯*[j] ↑f = g.
+      â\88\83â\88\83f. â«°*[↑j]g2 ~⊚ f1 ≘ f & ⫯*[j] ↑f = g.
 #g2 #g1 #g #i #j #Hg2 #Hg
 elim (coafter_fwd_pushs … Hg Hg2) #f #H0 destruct
 lapply (coafter_tls … Hg2 Hg) -Hg <tls_pushs <tls_pushs #Hf
index 05a3505e162a1268ca7a294e2282f7840514db24..43e865131e56014b269b18177aae0020a0e7cad7 100644 (file)
@@ -20,7 +20,7 @@ include "ground/relocation/gr_isd.ma".
 (* Constructions with gr_tl *************************************************)
 
 (*** isdiv_tl *)
-lemma gr_isd_tl (f): ð\9d\9b\80â\9dªfâ\9d« â\86\92 ð\9d\9b\80â\9dªâ«±f❫.
+lemma gr_isd_tl (f): ð\9d\9b\80â\9dªfâ\9d« â\86\92 ð\9d\9b\80â\9dªâ«°f❫.
 #f cases (gr_map_split_tl f) * #H
 [ elim (gr_isd_inv_push … H) -H //
 | /2 width=3 by gr_isd_inv_next/
index 3bea6fb184f9017a3942f4fd8252dde0d04f4aa4..dc5b123cc05310f03f1ea7e49ac69372079f9b0e 100644 (file)
@@ -20,6 +20,6 @@ include "ground/relocation/gr_isd_tl.ma".
 (* Constructions with gr_tls ************************************************)
 
 (*** isdiv_tls *)
-lemma gr_isd_tls (n) (g): ð\9d\9b\80â\9dªgâ\9d« â\86\92 ð\9d\9b\80â\9dªâ«±*[n]g❫.
+lemma gr_isd_tls (n) (g): ð\9d\9b\80â\9dªgâ\9d« â\86\92 ð\9d\9b\80â\9dªâ«°*[n]g❫.
 #n @(nat_ind_succ … n) -n /3 width=1 by gr_isd_tl/
 qed.
index 52bc146fef39521e7826e5d021bad71b2092021b..5268136d7fe34e1c0a08d0360f9dc146bcac0aae 100644 (file)
@@ -20,7 +20,7 @@ include "ground/relocation/gr_isf.ma".
 (* Constructions with gr_tl *************************************************)
 
 (*** isfin_tl *)
-lemma gr_isf_tl (f): ð\9d\90\85â\9dªfâ\9d« â\86\92 ð\9d\90\85â\9dªâ«±f❫.
+lemma gr_isf_tl (f): ð\9d\90\85â\9dªfâ\9d« â\86\92 ð\9d\90\85â\9dªâ«°f❫.
 #f elim (gr_map_split_tl f) * #Hf
 /3 width=3 by gr_isf_inv_push, gr_isf_inv_next/
 qed.
@@ -28,7 +28,7 @@ qed.
 (* Inversions with gr_tl ****************************************************)
 
 (*** isfin_inv_tl *)
-lemma gr_isf_inv_tl (g): ð\9d\90\85â\9dªâ«±g❫ → 𝐅❪g❫.
+lemma gr_isf_inv_tl (g): ð\9d\90\85â\9dªâ«°g❫ → 𝐅❪g❫.
 #f elim (gr_map_split_tl f) * #Hf
 /2 width=1 by gr_isf_next, gr_isf_push/
 qed-.
index ebd7a36e2182e4181aa05cdf218292cafe0b6489..3815a74a3adb7eee3c7633120f2a964d76af7753 100644 (file)
@@ -19,13 +19,13 @@ include "ground/relocation/gr_isf_tl.ma".
 
 (* Constructions with gr_tls ************************************************)
 
-lemma gr_isf_tls (n) (f): ð\9d\90\85â\9dªfâ\9d« â\86\92 ð\9d\90\85â\9dªâ«±*[n]f❫.
+lemma gr_isf_tls (n) (f): ð\9d\90\85â\9dªfâ\9d« â\86\92 ð\9d\90\85â\9dªâ«°*[n]f❫.
 #n @(nat_ind_succ … n) -n /3 width=1 by gr_isf_tl/
 qed.
 
 (* Inversions with gr_tls ***************************************************)
 
 (*** isfin_inv_tls *)
-lemma gr_isf_inv_tls (n) (g): ð\9d\90\85â\9dªâ«±*[n]g❫ → 𝐅❪g❫.
+lemma gr_isf_inv_tls (n) (g): ð\9d\90\85â\9dªâ«°*[n]g❫ → 𝐅❪g❫.
 #n @(nat_ind_succ … n) -n /3 width=1 by gr_isf_inv_tl/
 qed-.
index abf089d543c607820f1e33f7e7dff97f78ce5bdc..0246557f3cc06a37f37035bb79d5ada730959a27 100644 (file)
@@ -20,7 +20,7 @@ include "ground/relocation/gr_isi.ma".
 (* Constructions with gr_tl *************************************************)
 
 (*** isid_tl *)
-lemma gr_isi_tl (f): ð\9d\90\88â\9dªfâ\9d« â\86\92 ð\9d\90\88â\9dªâ«±f❫.
+lemma gr_isi_tl (f): ð\9d\90\88â\9dªfâ\9d« â\86\92 ð\9d\90\88â\9dªâ«°f❫.
 #f cases (gr_map_split_tl f) * #H
 [ /2 width=3 by gr_isi_inv_push/
 | elim (gr_isi_inv_next … H) -H //
index cdef65ddbbf0ed8f5aebe05dcb8b684b96880536..05881cbb5158a7f2b4064f9b82f5475891987553 100644 (file)
@@ -20,6 +20,6 @@ include "ground/relocation/gr_isi_tl.ma".
 (* Constructions with gr_tls ************************************************)
 
 (*** isid_tls *)
-lemma gr_isi_tls (n) (f): ð\9d\90\88â\9dªfâ\9d« â\86\92 ð\9d\90\88â\9dªâ«±*[n]f❫.
+lemma gr_isi_tls (n) (f): ð\9d\90\88â\9dªfâ\9d« â\86\92 ð\9d\90\88â\9dªâ«°*[n]f❫.
 #n @(nat_ind_succ … n) -n /3 width=1 by gr_isi_tl/
 qed.
index 8a3636574798a7a9ce6ce3a64612fbb8365aca5d..d7f511a56fa1ef8c75a71b1125ab9725f7033756 100644 (file)
@@ -42,7 +42,7 @@ qed-.
 (* Constructions with gr_tl *************************************************)
 
 (*** istot_tl *)
-lemma gr_ist_tl (f): ð\9d\90\93â\9dªfâ\9d« â\86\92 ð\9d\90\93â\9dªâ«±f❫.
+lemma gr_ist_tl (f): ð\9d\90\93â\9dªfâ\9d« â\86\92 ð\9d\90\93â\9dªâ«°f❫.
 #f cases (gr_map_split_tl f) *
 /2 width=3 by gr_ist_inv_next, gr_ist_inv_push/
 qed.
index e1c04930a4f18519619eb16cc0e0d086262ce37d..e6da8edd37a31b7b40f6a38384fc69f2d34a82a5 100644 (file)
@@ -20,7 +20,7 @@ include "ground/relocation/gr_ist.ma".
 (* Constructions with gr_tls ************************************************)
 
 (*** istot_tls *)
-lemma gr_ist_tls (n) (f): ð\9d\90\93â\9dªfâ\9d« â\86\92 ð\9d\90\93â\9dªâ«±*[n]f❫.
+lemma gr_ist_tls (n) (f): ð\9d\90\93â\9dªfâ\9d« â\86\92 ð\9d\90\93â\9dªâ«°*[n]f❫.
 #n @(nat_ind_succ … n) -n //
 #n #IH #f #Hf <gr_tls_succ
 /3 width=1 by gr_ist_tl/
index 73fa585b7086ddfc8ce21d3b57a3ec41c6d0c695..8a7b07df1792ffe56c6f8901acbb3dc9f7c17228 100644 (file)
@@ -19,7 +19,7 @@ include "ground/relocation/gr_isu.ma".
 
 (* Constructions with gr_tl *************************************************)
 
-lemma gr_isu_tl (f): ð\9d\90\94â\9dªfâ\9d« â\86\92 ð\9d\90\94â\9dªâ«±f❫.
+lemma gr_isu_tl (f): ð\9d\90\94â\9dªfâ\9d« â\86\92 ð\9d\90\94â\9dªâ«°f❫.
 #f cases (gr_map_split_tl f) * #H
 [ /3 width=3 by gr_isu_inv_push, gr_isu_isi/
 | /2 width=3 by gr_isu_inv_next/
index 8fc080ed62317516833515d565b5d0fe19467a37..648c27f7197fab9ae455defeb84997d582dbc38c 100644 (file)
@@ -40,7 +40,7 @@ lemma gr_pat_increasing_strict (g) (i1) (i2):
 qed-.
 
 (*** at_fwd_id_ex *)
-lemma gr_pat_des_id (f) (i): @â\9dªi,fâ\9d« â\89\98 i â\86\92 â«¯â«±f = f.
+lemma gr_pat_des_id (f) (i): @â\9dªi,fâ\9d« â\89\98 i â\86\92 â«¯â«°f = f.
 #f elim (gr_map_split_tl f) //
 #H #i #Hf elim (gr_pat_inv_next … Hf … H) -Hf -H
 #j2 #Hg #H destruct lapply (gr_pat_increasing … Hg) -Hg
index 1eca80ecf46eabe8ec12ea8e2d22568472d20d8b..f31d01b5d4af621da8591a52b2a4f2253d608d19 100644 (file)
@@ -23,7 +23,7 @@ include "ground/relocation/gr_pat_eq.ma".
 (* Note: this requires ↑ on first n *)
 (*** at_pxx_tls *)
 lemma gr_pat_unit_succ_tls (n) (f):
-      @â\9dªð\9d\9f\8f,fâ\9d« â\89\98 â\86\91n â\86\92 @â\9dªð\9d\9f\8f,⫱*[n]f❫ ≘ 𝟏.
+      @â\9dªð\9d\9f\8f,fâ\9d« â\89\98 â\86\91n â\86\92 @â\9dªð\9d\9f\8f,â«°*[n]f❫ ≘ 𝟏.
 #n @(nat_ind_succ … n) -n //
 #n #IH #f #Hf
 elim (gr_pat_inv_unit_succ … Hf) -Hf [|*: // ] #g #Hg #H0 destruct
@@ -32,7 +32,7 @@ qed.
 
 (* Note: this requires ↑ on third n2 *)
 (*** at_tls *)
-lemma gr_pat_tls (n2) (f): â«¯â«±*[â\86\91n2]f â\89¡ â«±*[n2]f → ∃i1. @❪i1,f❫ ≘ ↑n2.
+lemma gr_pat_tls (n2) (f): â«¯â«°*[â\86\91n2]f â\89¡ â«°*[n2]f → ∃i1. @❪i1,f❫ ≘ ↑n2.
 #n2 @(nat_ind_succ … n2) -n2
 [ /4 width=4 by gr_pat_eq_repl_back, gr_pat_refl, ex_intro/
 | #n2 #IH #f <gr_tls_swap <gr_tls_swap in ⊢ (??%→?); #H
@@ -48,7 +48,7 @@ qed-.
 (*** at_inv_nxx *)
 lemma gr_pat_inv_succ_sn (p) (g) (i1) (j2):
       @❪↑i1,g❫ ≘ j2 → @❪𝟏,g❫ ≘ p →
-      â\88\83â\88\83i2. @â\9dªi1,⫱*[p]g❫ ≘ i2 & p+i2 = j2.
+      â\88\83â\88\83i2. @â\9dªi1,â«°*[p]g❫ ≘ i2 & p+i2 = j2.
 #p elim p -p
 [ #g #i1 #j2 #Hg #H
   elim (gr_pat_inv_unit_bi … H) -H [|*: // ] #f #H0
@@ -65,7 +65,7 @@ qed-.
 (* Note: this requires ↑ on first n2 *)
 (*** at_inv_tls *)
 lemma gr_pat_inv_succ_dx_tls (n2) (i1) (f):
-      @â\9dªi1,fâ\9d« â\89\98 â\86\91n2 â\86\92 â«¯â«±*[â\86\91n2]f â\89¡ â«±*[n2]f.
+      @â\9dªi1,fâ\9d« â\89\98 â\86\91n2 â\86\92 â«¯â«°*[â\86\91n2]f â\89¡ â«°*[n2]f.
 #n2 @(nat_ind_succ … n2) -n2
 [ #i1 #f #Hf elim (gr_pat_inv_unit_dx … Hf) -Hf // #g #H1 #H destruct
   /2 width=1 by gr_eq_refl/
index 8aec4d513fcbf0df6c4a912fad2b9455dd88de09..74c15789f00bbc773189e17d68b58a735bfe6bf2 100644 (file)
@@ -124,21 +124,21 @@ qed-.
 
 (*** sle_px_tl *)
 lemma gr_sle_push_sn_tl:
-      â\88\80g1,g2. g1 â\8a\86 g2 â\86\92 â\88\80f1. â«¯f1 = g1 â\86\92 f1 â\8a\86 â«±g2.
+      â\88\80g1,g2. g1 â\8a\86 g2 â\86\92 â\88\80f1. â«¯f1 = g1 â\86\92 f1 â\8a\86 â«°g2.
 #g1 #g2 #H #f1 #H1
 elim (gr_sle_inv_push_sn … H … H1) -H -H1 * //
 qed.
 
 (*** sle_xn_tl *)
 lemma gr_sle_next_dx_tl:
-      â\88\80g1,g2. g1 â\8a\86 g2 â\86\92 â\88\80f2. â\86\91f2 = g2 â\86\92 â«±g1 ⊆ f2.
+      â\88\80g1,g2. g1 â\8a\86 g2 â\86\92 â\88\80f2. â\86\91f2 = g2 â\86\92 â«°g1 ⊆ f2.
 #g1 #g2 #H #f2 #H2
 elim (gr_sle_inv_next_dx … H … H2) -H -H2 * //
 qed.
 
 (*** sle_tl *)
 lemma gr_sle_tl:
-      â\88\80f1,f2. f1 â\8a\86 f2 â\86\92 â«±f1 â\8a\86 â«±f2.
+      â\88\80f1,f2. f1 â\8a\86 f2 â\86\92 â«°f1 â\8a\86 â«°f2.
 #f1 elim (gr_map_split_tl f1) #H1 #f2 #H
 [ lapply (gr_sle_push_sn_tl … H … H1) -H //
 | elim (gr_sle_inv_next_sn … H … H1) -H //
@@ -149,14 +149,14 @@ qed.
 
 (*** sle_inv_tl_sn *)
 lemma gr_sle_inv_tl_sn:
-      â\88\80f1,f2. â«±f1 ⊆ f2 → f1 ⊆ ↑f2.
+      â\88\80f1,f2. â«°f1 ⊆ f2 → f1 ⊆ ↑f2.
 #f1 elim (gr_map_split_tl f1) #H #f2 #Hf12
 /2 width=5 by gr_sle_next, gr_sle_weak/
 qed-.
 
 (*** sle_inv_tl_dx *)
 lemma gr_sle_inv_tl_dx:
-      â\88\80f1,f2. f1 â\8a\86 â«±f2 → ⫯f1 ⊆ f2.
+      â\88\80f1,f2. f1 â\8a\86 â«°f2 → ⫯f1 ⊆ f2.
 #f1 #f2 elim (gr_map_split_tl f2) #H #Hf12
 /2 width=5 by gr_sle_push, gr_sle_weak/
 qed-.
index ac4300633c3f5ac966b5a59b83a330dc7e08db1d..ea319ccdab22475a7938083ebb9c56bf24114ba9 100644 (file)
@@ -21,7 +21,7 @@ include "ground/relocation/gr_sle.ma".
 
 (*** sle_tls *)
 lemma gr_sle_tls:
-      â\88\80f1,f2. f1 â\8a\86 f2 â\86\92 â\88\80n. â«±*[n] f1 â\8a\86 â«±*[n] f2.
+      â\88\80f1,f2. f1 â\8a\86 f2 â\86\92 â\88\80n. â«°*[n] f1 â\8a\86 â«°*[n] f2.
 #f1 #f2 #Hf12 #n @(nat_ind_succ … n) -n
 /2 width=5 by gr_sle_tl/
 qed.
index 54911325e6c440d34c908cc3ec946e664d92b04c..4f2e759e03f5b4b9bf646f9469c800e619ede9ab 100644 (file)
@@ -281,7 +281,7 @@ qed-.
 
 (*** sor_tl *)
 lemma gr_sor_tl:
-      â\88\80f1,f2,f. f1 â\8b\93 f2 â\89\98 f â\86\92 â«±f1 â\8b\93 â«±f2 â\89\98 â«±f.
+      â\88\80f1,f2,f. f1 â\8b\93 f2 â\89\98 f â\86\92 â«°f1 â\8b\93 â«°f2 â\89\98 â«°f.
 #f1 cases (gr_map_split_tl f1) #H1
 #f2 cases (gr_map_split_tl f2) #H2
 #f #Hf
@@ -295,8 +295,8 @@ qed.
 (*** sor_xxn_tl *)
 lemma gr_sor_next_tl:
       ∀g1,g2,g. g1 ⋓ g2 ≘ g → ∀f. ↑f = g →
-      (â\88\83â\88\83f1,f2. f1 â\8b\93 f2 â\89\98 f & â\86\91f1 = g1 & â«±g2 = f2) ∨
-      (â\88\83â\88\83f1,f2. f1 â\8b\93 f2 â\89\98 f & â«±g1 = f1 & ↑f2 = g2).
+      (â\88\83â\88\83f1,f2. f1 â\8b\93 f2 â\89\98 f & â\86\91f1 = g1 & â«°g2 = f2) ∨
+      (â\88\83â\88\83f1,f2. f1 â\8b\93 f2 â\89\98 f & â«°g1 = f1 & ↑f2 = g2).
 #g1 #g2 #g #H #f #H0 elim (gr_sor_inv_next … H … H0) -H -H0 *
 /3 width=5 by ex3_2_intro, or_introl, or_intror/
 qed-.
@@ -304,7 +304,7 @@ qed-.
 (*** sor_xnx_tl *)
 lemma gr_sor_next_dx_tl:
       ∀g1,g2,g. g1 ⋓ g2 ≘ g → ∀f2. ↑f2 = g2 →
-      â\88\83â\88\83f1,f. f1 â\8b\93 f2 â\89\98 f & â«±g1 = f1 & ↑f = g.
+      â\88\83â\88\83f1,f. f1 â\8b\93 f2 â\89\98 f & â«°g1 = f1 & ↑f = g.
 #g1 elim (gr_map_split_tl g1) #H1 #g2 #g #H #f2 #H2
 [ elim (gr_sor_inv_push_next … H … H1 H2)
 | elim (gr_sor_inv_next_bi … H … H1 H2)
@@ -315,7 +315,7 @@ qed-.
 (*** sor_nxx_tl *)
 lemma gr_sor_next_sn_tl:
       ∀g1,g2,g. g1 ⋓ g2 ≘ g → ∀f1. ↑f1 = g1 →
-      â\88\83â\88\83f2,f. f1 â\8b\93 f2 â\89\98 f & â«±g2 = f2 & ↑f = g.
+      â\88\83â\88\83f2,f. f1 â\8b\93 f2 â\89\98 f & â«°g2 = f2 & ↑f = g.
 #g1 #g2 elim (gr_map_split_tl g2) #H2 #g #H #f1 #H1
 [ elim (gr_sor_inv_next_push … H … H1 H2)
 | elim (gr_sor_inv_next_bi … H … H1 H2)
@@ -327,14 +327,14 @@ qed-.
 
 (*** sor_inv_tl_sn *)
 lemma gr_sor_inv_tl_sn:
-      â\88\80f1,f2,f. â«±f1 ⋓ f2 ≘ f → f1 ⋓ ↑f2 ≘ ↑f.
+      â\88\80f1,f2,f. â«°f1 ⋓ f2 ≘ f → f1 ⋓ ↑f2 ≘ ↑f.
 #f1 #f2 #f elim (gr_map_split_tl f1)
 /2 width=7 by gr_sor_push_next, gr_sor_next_bi/
 qed-.
 
 (*** sor_inv_tl_dx *)
 lemma gr_sor_inv_tl_dx:
-      â\88\80f1,f2,f. f1 â\8b\93 â«±f2 ≘ f → ↑f1 ⋓ f2 ≘ ↑f.
+      â\88\80f1,f2,f. f1 â\8b\93 â«°f2 ≘ f → ↑f1 ⋓ f2 ≘ ↑f.
 #f1 #f2 #f elim (gr_map_split_tl f2)
 /2 width=7 by gr_sor_next_push, gr_sor_next_bi/
 qed-.
index 82e447995e709a8ea466807377aa5c611cd4e77d..33a55aa150516b362ea096dba5851a798321a9a4 100644 (file)
@@ -22,7 +22,7 @@ include "ground/relocation/gr_sor.ma".
 (*** sor_tls *)
 lemma gr_sor_tls:
       ∀f1,f2,f. f1 ⋓ f2 ≘ f →
-      â\88\80n. â«±*[n]f1 â\8b\93 â«±*[n]f2 â\89\98 â«±*[n]f.
+      â\88\80n. â«°*[n]f1 â\8b\93 â«°*[n]f2 â\89\98 â«°*[n]f.
 #f1 #f2 #f #Hf #n @(nat_ind_succ … n) -n
 /2 width=1 by gr_sor_tl/
 qed.
index c0d15ce19a3de6239abb259f37a2b56b06a1da08..909430cd9648cab66cb9702f9fadd922aed5aa5f 100644 (file)
 (*                                                                        *)
 (**************************************************************************)
 
-include "ground/notation/functions/droppred_1.ma".
+include "ground/notation/functions/downspoon_1.ma".
 include "ground/lib/stream_hdtl.ma".
 include "ground/relocation/gr_map.ma".
 
 (* TAIL FOR GENERIC RELOCATION MAPS *****************************************)
 
 (*** tl *)
-definition gr_tl (f): gr_map â\89\9d â«°f.
+definition gr_tl (f): gr_map â\89\9d â\87£f.
 
 interpretation
   "tail (generic relocation maps)"
-  'DropPred f = (gr_tl f).
+  'DownSpoon f = (gr_tl f).
 
 (* Basic constructions ******************************************************)
 
 (*** tl_push_rew *)
-lemma gr_tl_push (f): f = â«±⫯f.
+lemma gr_tl_push (f): f = â«°⫯f.
 // qed.
 
 (*** tl_next_rew *)
-lemma gr_tl_next (f): f = â«±↑f.
+lemma gr_tl_next (f): f = â«°↑f.
 // qed.
 
 (* Basic eliminations *******************************************************)
 
 (*** pn_split gr_map_split *)
-lemma gr_map_split_tl (f): â\88¨â\88¨ â«¯â«±f = f | â\86\91⫱f = f.
+lemma gr_map_split_tl (f): â\88¨â\88¨ â«¯â«°f = f | â\86\91â«°f = f.
 * * /2 width=1 by or_introl, or_intror/
 qed-.
index d93e7215f59dbb7a978f742d99f9193fa0ada2ea..e5f9897c7b52a32be2b67e367fc8ec9f49d58abd 100644 (file)
@@ -27,7 +27,7 @@ qed.
 
 (*** tl_eq_repl *)
 lemma gr_tl_eq_repl:
-      gr_eq_repl â\80¦ (λf1,f2. â«±f1 â\89¡ â«±f2).
+      gr_eq_repl â\80¦ (λf1,f2. â«°f1 â\89¡ â«°f2).
 #f1 #f2 * -f1 -f2 //
 qed.
 
@@ -36,8 +36,8 @@ qed.
 (*** eq_inv_gen *)
 lemma gr_eq_inv_gen (g1) (g2):
       g1 ≡ g2 →
-      â\88¨â\88¨ â\88§â\88§ â«±g1 â\89¡ â«±g2 & â«¯â«±g1 = g1 & â«¯â«±g2 = g2
-       | â\88§â\88§ â«±g1 â\89¡ â«±g2 & â\86\91⫱g1 = g1 & â\86\91⫱g2 = g2.
+      â\88¨â\88¨ â\88§â\88§ â«°g1 â\89¡ â«°g2 & â«¯â«°g1 = g1 & â«¯â«°g2 = g2
+       | â\88§â\88§ â«°g1 â\89¡ â«°g2 & â\86\91â«°g1 = g1 & â\86\91â«°g2 = g2.
 #g1 #g2 * -g1 -g2 #f1 #f2 #g1 #g2 #f * *
 /3 width=1 by and3_intro, or_introl, or_intror/
 qed-.
@@ -47,7 +47,7 @@ qed-.
 (*** gr_eq_inv_px *)
 lemma gr_eq_inv_push_sn (g1) (g2):
       g1 ≡ g2 → ∀f1. ⫯f1 = g1 →
-      â\88§â\88§ f1 â\89¡ â«±g2 & â«¯â«±g2 = g2.
+      â\88§â\88§ f1 â\89¡ â«°g2 & â«¯â«°g2 = g2.
 #g1 #g2 #H #f1 #Hf1
 elim (gr_eq_inv_gen … H) -H * #Hg #Hg1 #Hg2 destruct
 [ /2 width=1 by conj/
@@ -58,7 +58,7 @@ qed-.
 (*** gr_eq_inv_nx *)
 lemma gr_eq_inv_next_sn (g1) (g2):
       g1 ≡ g2 → ∀f1. ↑f1 = g1 →
-      â\88§â\88§ f1 â\89¡ â«±g2 & â\86\91⫱g2 = g2.
+      â\88§â\88§ f1 â\89¡ â«°g2 & â\86\91â«°g2 = g2.
 #g1 #g2 #H #f1 #Hf1
 elim (gr_eq_inv_gen … H) -H * #Hg #Hg1 #Hg2 destruct
 [ elim (eq_inv_gr_push_next … Hg1)
@@ -69,7 +69,7 @@ qed-.
 (*** gr_eq_inv_xp *)
 lemma gr_eq_inv_push_dx (g1) (g2):
       g1 ≡ g2 → ∀f2. ⫯f2 = g2 →
-      â\88§â\88§ â«±g1 â\89¡ f2 & â«¯â«±g1 = g1.
+      â\88§â\88§ â«°g1 â\89¡ f2 & â«¯â«°g1 = g1.
 #g1 #g2 #H #f2 #Hf2
 elim (gr_eq_inv_gen … H) -H * #Hg #Hg1 #Hg2 destruct
 [ /2 width=1 by conj/
@@ -80,7 +80,7 @@ qed-.
 (*** gr_eq_inv_xn *)
 lemma gr_eq_inv_next_dx (g1) (g2):
       g1 ≡ g2 → ∀f2. ↑f2 = g2 →
-      â\88§â\88§ â«±g1 â\89¡ f2 & â\86\91⫱g1 = g1.
+      â\88§â\88§ â«°g1 â\89¡ f2 & â\86\91â«°g1 = g1.
 #g1 #g2 #H #f2 #Hf2
 elim (gr_eq_inv_gen … H) -H * #Hg #Hg1 #Hg2 destruct
 [ elim (eq_inv_gr_push_next … Hg2)
index e6134e7f9a77899840332443c91e06f67bed89d4..d15047b0c63783a7bd033af33eff400b9a832998 100644 (file)
 (*                                                                        *)
 (**************************************************************************)
 
-include "ground/notation/functions/droppreds_2.ma".
+include "ground/notation/functions/downspoonstar_2.ma".
 include "ground/lib/stream_tls.ma".
 include "ground/relocation/gr_tl.ma".
 
 (* ITERATED TAIL FOR GENERIC RELOCATION MAPS ********************************)
 
 (*** tls *)
-definition gr_tls (n) (f:gr_map) â\89\9d â«°*[n]f.
+definition gr_tls (n) (f:gr_map) â\89\9d â\87£*[n]f.
 
 interpretation
   "iterated tail (generic relocation maps)"
-  'DropPreds n f = (gr_tls n f).
+  'DownSpoonStar n f = (gr_tls n f).
 
 (* Basic constructions (specific) *******************************************)
 
 (*** tls_O *)
-lemma gr_tls_zero (f): f = â«±*[𝟎] f.
+lemma gr_tls_zero (f): f = â«°*[𝟎] f.
 // qed.
 
 (*** tls_swap *)
-lemma gr_tls_tl (n) (f): â«±â«±*[n] f = â«±*[n] â«±f.
+lemma gr_tls_tl (n) (f): â«°â«°*[n] f = â«°*[n] â«°f.
 /2 width=1 by stream_tls_tl/ qed.
 
 (*** tls_S *)
-lemma gr_tls_succ (n) (f): â«±â«±*[n] f = â«±*[↑n] f.
+lemma gr_tls_succ (n) (f): â«°â«°*[n] f = â«°*[↑n] f.
 /2 width=1 by stream_tls_succ/ qed.
 
 (*** tls_xn *)
-lemma gr_tls_swap (n) (f): â«±*[n] â«±f = â«±*[↑n] f.
+lemma gr_tls_swap (n) (f): â«°*[n] â«°f = â«°*[↑n] f.
 // qed.
index 4c6dcda009e18548a3cf870c8e5ce457f56d231b..0cc631686907c2aed4555b41909b72b21aea6a7b 100644 (file)
@@ -21,6 +21,6 @@ include "ground/relocation/gr_tls.ma".
 
 (*** tls_eq_repl *)
 lemma gr_tls_eq_repl (n):
-      gr_eq_repl (λf1,f2. â«±*[n] f1 â\89¡ â«±*[n] f2).
+      gr_eq_repl (λf1,f2. â«°*[n] f1 â\89¡ â«°*[n] f2).
 #n @(nat_ind_succ … n) -n /3 width=1 by gr_tl_eq_repl/
 qed.
index 7934c2e3ad0d6f0ebc29c84e935bc672cae35e36..a0d4e3910c2cf7ea066c38662234f2fff83ec5e1 100644 (file)
@@ -22,7 +22,7 @@ include "ground/relocation/gr_tls_eq.ma".
 (*** eq_inv_nexts_sn *)
 lemma gr_eq_inv_nexts_sn (n):
       ∀f1,g2. ↑*[n] f1 ≡ g2 →
-      â\88§â\88§ f1 â\89¡ â«±*[n]g2 & â\86\91*[n]⫱*[n]g2 = g2.
+      â\88§â\88§ f1 â\89¡ â«°*[n]g2 & â\86\91*[n]â«°*[n]g2 = g2.
 #n @(nat_ind_succ … n) -n /2 width=1 by conj/
 #n #IH #f1 #g2 #H
 elim (gr_eq_inv_next_sn … H) -H [|*: // ] #Hf10 *
@@ -33,7 +33,7 @@ qed-.
 (*** eq_inv_nexts_dx *)
 lemma gr_eq_inv_nexts_dx (n):
       ∀f2,g1. g1 ≡ ↑*[n] f2 →
-      â\88§â\88§ â«±*[n]g1 â\89¡ f2 & â\86\91*[n]⫱*[n]g1 = g1.
+      â\88§â\88§ â«°*[n]g1 â\89¡ f2 & â\86\91*[n]â«°*[n]g1 = g1.
 #n @(nat_ind_succ … n) -n /2 width=1 by conj/
 #n #IH #f2 #g1 #H
 elim (gr_eq_inv_next_dx … H) -H [|*: // ] #Hf02 *
index bcce1e8c896cad2227fd67d8641160b7f89e11c8..1bc1578d7b8f50458ee5a58323b7c3aac16e7799 100644 (file)
@@ -20,7 +20,7 @@ include "ground/relocation/gr_tls.ma".
 (* Constructions with gr_pushs **********************************************)
 
 (*** tls_pushs *)
-lemma gr_tls_pushs (n) (f): f = â«±*[n] ⫯*[n] f.
+lemma gr_tls_pushs (n) (f): f = â«°*[n] ⫯*[n] f.
 #n @(nat_ind_succ … n) -n //
 #n #IH #f <gr_tls_swap <gr_pushs_succ <gr_tl_push //
 qed.
index db5e705a3759ed28661819b9328f1e84a7f44760..2193d8dd9f4447d2d016049246e36c958f554fd0 100644 (file)
@@ -22,7 +22,7 @@ include "ground/relocation/gr_pushs.ma".
 (*** eq_inv_pushs_sn *)
 lemma gr_eq_inv_pushs_sn (n):
       ∀f1,g2. ⫯*[n] f1 ≡ g2 →
-      â\88§â\88§ f1 â\89¡ â«±*[n]g2 & â«¯*[n]⫱*[n]g2 = g2.
+      â\88§â\88§ f1 â\89¡ â«°*[n]g2 & â«¯*[n]â«°*[n]g2 = g2.
 #n @(nat_ind_succ … n) -n /2 width=1 by conj/
 #n #IH #f1 #g2 #H
 elim (gr_eq_inv_push_sn … H) -H [|*: // ] #Hf10 *
@@ -33,7 +33,7 @@ qed-.
 (*** eq_inv_pushs_dx *)
 lemma gr_eq_inv_pushs_dx (n):
       ∀f2,g1. g1 ≡ ⫯*[n] f2 →
-      â\88§â\88§ â«±*[n]g1 â\89¡ f2 & â«¯*[n]⫱*[n]g1 = g1.
+      â\88§â\88§ â«°*[n]g1 â\89¡ f2 & â«¯*[n]â«°*[n]g1 = g1.
 #n @(nat_ind_succ … n) -n /2 width=1 by conj/
 #n #IH #f2 #g1 #H
 elim (gr_eq_inv_push_dx … H) -H [|*: // ] #Hf02 *
index 3646ed0eea6816d4f073c293fd48daadd479ef1e..ece01e73c0a1703d561faf0499892e282a122f36 100644 (file)
@@ -47,10 +47,10 @@ table {
           [ "gr_basic ( 𝐛❨?,?❩ )" * ]
           [ "gr_uni ( 𝐮❨?❩ )" "gr_uni_eq" * ]
           [ "gr_id ( 𝐢 ) " "gr_id_eq" * ]
-          [ "gr_tls ( â«±*[?]? )" "gr_tls_eq" "gr_tls_pushs" "gr_tls_pushs_eq" "gr_tls_nexts_eq" * ]
+          [ "gr_tls ( â«°*[?]? )" "gr_tls_eq" "gr_tls_pushs" "gr_tls_pushs_eq" "gr_tls_nexts_eq" * ]
           [ "gr_nexts ( ↑*[?]? )" "gr_nexts_eq" * ]
           [ "gr_pushs ( ⫯*[?]? )" "gr_pushs_eq" * ]
-          [ "gr_tl ( â«±? )" "gr_tl_eq" "gr_tl_eq_eq" * ]
+          [ "gr_tl ( â«°? )" "gr_tl_eq" "gr_tl_eq_eq" * ]
           [ "gr_eq ( ? ≡ ? )" * ]
           [ "gr_map ( ⫯? ) ( ↑? )" * ]
         }
@@ -118,8 +118,8 @@ table {
   class "yellow"
   [ { "extensions to the library" * } {
       [ { "streams" * } {
-          [ "stream_tls ( â«°*{?}[?]? )" "stream_tls_eq" * ]
-          [ "stream_hdtl ( â«°{?}? )" * ]
+          [ "stream_tls ( â\87£*{?}[?]? )" "stream_tls_eq" * ]
+          [ "stream_hdtl ( â\87£{?}? )" * ]
           [ "stream_eq ( ? ≗{?} ? )" "stream_eq_eq" * ]
           [ "stream ( ? ⨮{?} ? )" * ]
         }
index d67deff757ef601824d8c9587d1a5a14d9ff97b9..407f8cc4f30adcac171cd55e70e367e4077f650f 100644 (file)
@@ -419,12 +419,12 @@ qed-.
 (* Properties with application **********************************************)
 
 lemma drops_tls_at: ∀f,i1,i2. @❪i1,f❫ ≘ i2 →
-                    â\88\80b,L1,L2. â\87©*[b,⫱*[i2]f] L1 ≘ L2 →
-                    â\87©*[b,⫯⫱*[↑i2]f] L1 ≘ L2.
+                    â\88\80b,L1,L2. â\87©*[b,â«°*[i2]f] L1 ≘ L2 →
+                    â\87©*[b,⫯⫰*[↑i2]f] L1 ≘ L2.
 /3 width=3 by drops_eq_repl_fwd, at_inv_tls/ qed-.
 
 lemma drops_split_trans_bind2: ∀b,f,I,L,K0. ⇩*[b,f] L ≘ K0.ⓘ[I] → ∀i. @❪O,f❫ ≘ i →
-                               â\88\83â\88\83J,K. â\87©[i]L â\89\98 K.â\93\98[J] & â\87©*[b,⫱*[â\86\91i]f] K â\89\98 K0 & â\87§*[⫱*[↑i]f] I ≘ J.
+                               â\88\83â\88\83J,K. â\87©[i]L â\89\98 K.â\93\98[J] & â\87©*[b,â«°*[â\86\91i]f] K â\89\98 K0 & â\87§*[â«°*[↑i]f] I ≘ J.
 #b #f #I #L #K0 #H #i #Hf
 elim (drops_split_trans … H) -H [ |5: @(after_uni_dx … Hf) |2,3: skip ] /2 width=1 by after_isid_dx/ #Y #HLY #H
 lapply (drops_tls_at … Hf … H) -H #H
index d9a9588a346a996138c2c8edcda6c6a8f9123284..aeff28ceeda71426dc782d6ea008e1d5b2e11c4a 100644 (file)
@@ -198,7 +198,7 @@ qed-.
 lemma sex_sdj_split_dx (R1) (R2) (RP):
       c_reflexive … R1 → c_reflexive … R2 → c_reflexive … RP →
       ∀L1,f1.
-      (â\88\80g,I,K,n. â\87©[n] L1 â\89\98 K.â\93\98[I] â\86\92 â\86\91g = â«±*[n] f1 → R_pw_confluent1_sex R1 R1 R2 cfull g K I) →
+      (â\88\80g,I,K,n. â\87©[n] L1 â\89\98 K.â\93\98[I] â\86\92 â\86\91g = â«°*[n] f1 → R_pw_confluent1_sex R1 R1 R2 cfull g K I) →
       ∀L2. L1 ⪤[R1,RP,f1] L2 → ∀f2. f1 ∥ f2 →
       ∃∃L. L1 ⪤[R2,cfull,f1] L & L ⪤[RP,R1,f2] L2.
 #R1 #R2 #RP #HR1 #HR2 #HRP #L1 elim L1 -L1
index f928bda7c0bd5e899ff0698df0cf15c5bda060dc..128cd29749b7cf46787ae7fb6dbf5da5665d9909 100644 (file)
@@ -110,7 +110,7 @@ lemma seq_inv_push (f):
 qed-.
 
 lemma seq_inv_tl (f):
-      â\88\80I,L1,L2. L1 â\89¡[⫱f] L2 → L1.ⓘ[I] ≡[f] L2.ⓘ[I].
+      â\88\80I,L1,L2. L1 â\89¡[â«°f] L2 → L1.ⓘ[I] ≡[f] L2.ⓘ[I].
 /2 width=1 by sex_inv_tl/ qed-.
 
 (* Basic_2A1: removed theorems 5:
index 72909212ca0f9bcbdc72968302e0932542730623..2a6946fcab7ac6441c2109b34fbdfa422e9b625c 100644 (file)
@@ -177,7 +177,7 @@ lemma sex_inv_push (RN) (RP):
 qed-.
 
 lemma sex_inv_tl (RN) (RP):
-      â\88\80f,I1,I2,L1,L2. L1 âª¤[RN,RP,⫱f] L2 →
+      â\88\80f,I1,I2,L1,L2. L1 âª¤[RN,RP,â«°f] L2 →
       RN L1 I1 I2 → RP L1 I1 I2 →
       L1.ⓘ[I1] ⪤[RN,RP,f] L2.ⓘ[I2].
 #RN #RP #f #I1 #I2 #L2 #L2 elim (pn_split f) *
@@ -188,7 +188,7 @@ qed-.
 
 lemma sex_fwd_bind (RN) (RP):
       ∀f,I1,I2,L1,L2.
-      L1.â\93\98[I1] âª¤[RN,RP,f] L2.â\93\98[I2] â\86\92 L1 âª¤[RN,RP,⫱f] L2.
+      L1.â\93\98[I1] âª¤[RN,RP,f] L2.â\93\98[I2] â\86\92 L1 âª¤[RN,RP,â«°f] L2.
 #RN #RP #f #I1 #I2 #L1 #L2 #Hf
 elim (pn_split f) * #g #H destruct
 [ elim (sex_inv_push … Hf) | elim (sex_inv_next … Hf) ] -Hf //
@@ -330,7 +330,7 @@ lemma sex_dec (RN) (RP):
   lapply (sex_inv_atom1 … H) -H #H destruct
 | #f @or_intror #H
   lapply (sex_inv_atom2 … H) -H #H destruct
-| #L2 #I2 #f elim (IH L2 (⫱f)) -IH #HL12
+| #L2 #I2 #f elim (IH L2 (â«°f)) -IH #HL12
   [2: /4 width=3 by sex_fwd_bind, or_intror/ ]
   elim (pn_split f) * #g #H destruct
   [ elim (HRP L1 I1 I2) | elim (HRN L1 I1 I2) ] -HRP -HRN #HV12
index 9d3e2df4d6dce7bbe3cfa007c23ab4af3a111930..a92cf28c1ead5f1a28274416a987a6ad6917e5f6 100644 (file)
@@ -21,8 +21,8 @@ include "static_2/relocation/drops.ma".
 
 theorem sex_trans_gen (RN1) (RP1) (RN2) (RP2) (RN) (RP):
         ∀L1,f.
-        (â\88\80g,I,K,n. â\87©[n] L1 â\89\98 K.â\93\98[I] â\86\92 â\86\91g = â«±*[n] f → R_pw_transitive_sex RN1 RN2 RN RN1 RP1 g K I) →
-        (â\88\80g,I,K,n. â\87©[n] L1 â\89\98 K.â\93\98[I] â\86\92 â«¯g = â«±*[n] f → R_pw_transitive_sex RP1 RP2 RP RN1 RP1 g K I) →
+        (â\88\80g,I,K,n. â\87©[n] L1 â\89\98 K.â\93\98[I] â\86\92 â\86\91g = â«°*[n] f → R_pw_transitive_sex RN1 RN2 RN RN1 RP1 g K I) →
+        (â\88\80g,I,K,n. â\87©[n] L1 â\89\98 K.â\93\98[I] â\86\92 â«¯g = â«°*[n] f → R_pw_transitive_sex RP1 RP2 RP RN1 RP1 g K I) →
         ∀L0. L1 ⪤[RN1,RP1,f] L0 →
         ∀L2. L0 ⪤[RN2,RP2,f] L2 →
         L1 ⪤[RN,RP,f] L2.
@@ -64,8 +64,8 @@ qed-.
 
 theorem sex_conf (RN1) (RP1) (RN2) (RP2):
         ∀L,f.
-        (â\88\80g,I,K,n. â\87©[n] L â\89\98 K.â\93\98[I] â\86\92 â\86\91g = â«±*[n] f → R_pw_confluent2_sex RN1 RN2 RN1 RP1 RN2 RP2 g K I) →
-        (â\88\80g,I,K,n. â\87©[n] L â\89\98 K.â\93\98[I] â\86\92 â«¯g = â«±*[n] f → R_pw_confluent2_sex RP1 RP2 RN1 RP1 RN2 RP2 g K I) →
+        (â\88\80g,I,K,n. â\87©[n] L â\89\98 K.â\93\98[I] â\86\92 â\86\91g = â«°*[n] f → R_pw_confluent2_sex RN1 RN2 RN1 RP1 RN2 RP2 g K I) →
+        (â\88\80g,I,K,n. â\87©[n] L â\89\98 K.â\93\98[I] â\86\92 â«¯g = â«°*[n] f → R_pw_confluent2_sex RP1 RP2 RN1 RP1 RN2 RP2 g K I) →
         pw_confluent2 … (sex RN1 RP1 f) (sex RN2 RP2 f) L.
 #RN1 #RP1 #RN2 #RP2 #L elim L -L
 [ #f #_ #_ #L1 #H1 #L2 #H2 >(sex_inv_atom1 … H1) >(sex_inv_atom1 … H2) -H2 -H1
@@ -85,8 +85,8 @@ theorem sex_conf (RN1) (RP1) (RN2) (RP2):
 qed-.
 
 lemma sex_repl (RN) (RP) (SN) (SP) (L1) (f):
-      (â\88\80g,I,K1,n. â\87©[n] L1 â\89\98 K1.â\93\98[I] â\86\92 â\86\91g = â«±*[n] f → R_pw_replace3_sex … RN SN RN RP SN SP g K1 I) →
-      (â\88\80g,I,K1,n. â\87©[n] L1 â\89\98 K1.â\93\98[I] â\86\92 â«¯g = â«±*[n] f → R_pw_replace3_sex … RP SP RN RP SN SP g K1 I) →
+      (â\88\80g,I,K1,n. â\87©[n] L1 â\89\98 K1.â\93\98[I] â\86\92 â\86\91g = â«°*[n] f → R_pw_replace3_sex … RN SN RN RP SN SP g K1 I) →
+      (â\88\80g,I,K1,n. â\87©[n] L1 â\89\98 K1.â\93\98[I] â\86\92 â«¯g = â«°*[n] f → R_pw_replace3_sex … RP SP RN RP SN SP g K1 I) →
       ∀L2. L1 ⪤[RN,RP,f] L2 → ∀K1. L1 ⪤[SN,SP,f] K1 →
       ∀K2. L2 ⪤[SN,SP,f] K2 → K1 ⪤[RN,RP,f] K2.
 #RN #RP #SN #SP #L1 elim L1 -L1
index 887703487aaaef9bbee50c968015d91d306ccf71..e9e6380d408e8c8dc5de8ffdfbc4c41876ddc769 100644 (file)
@@ -28,7 +28,7 @@ inductive frees: relation3 lenv term rtmap ≝
               frees (L.ⓘ[I]) (#↑i) (⫯f)
 | frees_gref: ∀f,L,l. 𝐈❪f❫ → frees L (§l) f
 | frees_bind: ∀f1,f2,f,p,I,L,V,T. frees L V f1 → frees (L.ⓑ[I]V) T f2 →
-              f1 â\8b\93 â«±f2 ≘ f → frees L (ⓑ[p,I]V.T) f
+              f1 â\8b\93 â«°f2 ≘ f → frees L (ⓑ[p,I]V.T) f
 | frees_flat: ∀f1,f2,f,I,L,V,T. frees L V f1 → frees L T f2 →
               f1 ⋓ f2 ≘ f → frees L (ⓕ[I]V.T) f
 .
@@ -143,7 +143,7 @@ lemma frees_inv_gref: ∀f,L,l. L ⊢ 𝐅+❪§l❫ ≘ f → 𝐈❪f❫.
 
 fact frees_inv_bind_aux:
      ∀f,L,X. L ⊢ 𝐅+❪X❫ ≘ f → ∀p,I,V,T. X = ⓑ[p,I]V.T →
-     â\88\83â\88\83f1,f2. L â\8a¢ ð\9d\90\85\9dªVâ\9d« â\89\98 f1 & L.â\93\91[I]V â\8a¢ ð\9d\90\85\9dªTâ\9d« â\89\98 f2 & f1 â\8b\93 â«±f2 ≘ f.
+     â\88\83â\88\83f1,f2. L â\8a¢ ð\9d\90\85\9dªVâ\9d« â\89\98 f1 & L.â\93\91[I]V â\8a¢ ð\9d\90\85\9dªTâ\9d« â\89\98 f2 & f1 â\8b\93 â«°f2 ≘ f.
 #f #L #X * -f -L -X
 [ #f #L #s #_ #q #J #W #U #H destruct
 | #f #i #_ #q #J #W #U #H destruct
@@ -158,7 +158,7 @@ qed-.
 
 lemma frees_inv_bind:
       ∀f,p,I,L,V,T. L ⊢ 𝐅+❪ⓑ[p,I]V.T❫ ≘ f →
-      â\88\83â\88\83f1,f2. L â\8a¢ ð\9d\90\85\9dªVâ\9d« â\89\98 f1 & L.â\93\91[I]V â\8a¢ ð\9d\90\85\9dªTâ\9d« â\89\98 f2 & f1 â\8b\93 â«±f2 ≘ f.
+      â\88\83â\88\83f1,f2. L â\8a¢ ð\9d\90\85\9dªVâ\9d« â\89\98 f1 & L.â\93\91[I]V â\8a¢ ð\9d\90\85\9dªTâ\9d« â\89\98 f2 & f1 â\8b\93 â«°f2 ≘ f.
 /2 width=4 by frees_inv_bind_aux/ qed-.
 
 fact frees_inv_flat_aux: ∀f,L,X. L ⊢ 𝐅+❪X❫ ≘ f → ∀I,V,T. X = ⓕ[I]V.T →
index 7b4f04950b5d65b11741a5212f9432edeaf49191..69e0158e9539e102906928e9c9163d280dee365d 100644 (file)
@@ -171,7 +171,7 @@ qed-.
 lemma frees_inv_lifts_SO:
       ∀b,f,L,U. L ⊢ 𝐅+❪U❫ ≘ f →
       ∀K. ⇩*[b,𝐔❨1❩] L ≘ K → ∀T. ⇧[1] T ≘ U →
-      K â\8a¢ ð\9d\90\85\9dªTâ\9d« â\89\98 â«±f.
+      K â\8a¢ ð\9d\90\85\9dªTâ\9d« â\89\98 â«°f.
 #b #f #L #U #H #K #HLK #T #HTU elim(frees_inv_lifts_ex … H … HLK … HTU) -b -L -U
 #f1 #Hf #Hf1 elim (coafter_inv_nxx … Hf) -Hf
 /3 width=5 by frees_eq_repl_back, coafter_isid_inv_sn/
@@ -189,7 +189,7 @@ qed-.
 lemma frees_inv_drops_next:
       ∀f1,L1,T1. L1 ⊢ 𝐅+❪T1❫ ≘ f1 →
       ∀I2,L2,V2,i. ⇩[i] L1 ≘ L2.ⓑ[I2]V2 →
-      â\88\80g1. â\86\91g1 = â«±*[i] f1 →
+      â\88\80g1. â\86\91g1 = â«°*[i] f1 →
       ∃∃g2. L2 ⊢ 𝐅+❪V2❫ ≘ g2 & g2 ⊆ g1.
 #f1 #L1 #T1 #H elim H -f1 -L1 -T1
 [ #f1 #L1 #s #Hf1 #I2 #L2 #V2 #j #_ #g1 #H1 -I2 -L1 -s
index 05500252c002af036f93651bdd89355ed036fc53..0ae38b461d55d3d99f23d8fd0a089c94f5e65551 100644 (file)
@@ -39,7 +39,7 @@ lemma frees_total: ∀L,T. ∃f. L ⊢ 𝐅+❪T❫ ≘ f.
 | #p #I #V #T #HG #HL #HT destruct
   elim (IH G L V) // #f1 #HV
   elim (IH G (L.ⓑ[I]V) T) -IH // #f2 #HT
-  elim (sor_isfin_ex f1 (⫱f2))
+  elim (sor_isfin_ex f1 (â«°f2))
   /3 width=6 by frees_fwd_isfin, frees_bind, isfin_tl, ex_intro/
 | #I #V #T #HG #HL #HT destruct
   elim (IH G L V) // #f1 #HV
@@ -53,7 +53,7 @@ qed-.
 
 theorem frees_bind_void:
         ∀f1,L,V. L ⊢ 𝐅+❪V❫ ≘ f1 → ∀f2,T. L.ⓧ ⊢ 𝐅+❪T❫ ≘ f2 →
-        â\88\80f. f1 â\8b\93 â«±f2 ≘ f → ∀p,I. L ⊢ 𝐅+❪ⓑ[p,I]V.T❫ ≘ f.
+        â\88\80f. f1 â\8b\93 â«°f2 ≘ f → ∀p,I. L ⊢ 𝐅+❪ⓑ[p,I]V.T❫ ≘ f.
 #f1 #L #V #Hf1 #f2 #T #Hf2 #f #Hf #p #I
 elim (frees_total (L.ⓑ[I]V) T) #f0 #Hf0
 lapply (lsubr_lsubf … Hf2 … Hf0) -Hf2 /2 width=5 by lsubr_unit/ #H02
@@ -81,7 +81,7 @@ qed-.
 
 lemma frees_inv_bind_void:
       ∀f,p,I,L,V,T. L ⊢ 𝐅+❪ⓑ[p,I]V.T❫ ≘ f →
-      â\88\83â\88\83f1,f2. L â\8a¢ ð\9d\90\85\9dªVâ\9d« â\89\98 f1 & L.â\93§ â\8a¢ ð\9d\90\85\9dªTâ\9d« â\89\98 f2 & f1 â\8b\93 â«±f2 ≘ f.
+      â\88\83â\88\83f1,f2. L â\8a¢ ð\9d\90\85\9dªVâ\9d« â\89\98 f1 & L.â\93§ â\8a¢ ð\9d\90\85\9dªTâ\9d« â\89\98 f2 & f1 â\8b\93 â«°f2 ≘ f.
 #f #p #I #L #V #T #H
 elim (frees_inv_bind … H) -H #f1 #f2 #Hf1 #Hf2 #Hf
 elim (frees_total (L.ⓧ) T) #f0 #Hf0
@@ -119,7 +119,7 @@ lemma frees_ind_void (Q:relation3 …):
         ∀f,L,l. 𝐈❪f❫ →  Q L (§l) f
       ) → (
         ∀f1,f2,f,p,I,L,V,T.
-        L â\8a¢ ð\9d\90\85\9dªVâ\9d« â\89\98 f1 â\86\92 L.â\93§ â\8a¢ð\9d\90\85\9dªTâ\9d«â\89\98 f2 â\86\92 f1 â\8b\93 â«±f2 ≘ f →
+        L â\8a¢ ð\9d\90\85\9dªVâ\9d« â\89\98 f1 â\86\92 L.â\93§ â\8a¢ð\9d\90\85\9dªTâ\9d«â\89\98 f2 â\86\92 f1 â\8b\93 â«°f2 ≘ f →
         Q L V f1 → Q (L.ⓧ) T f2 → Q L (ⓑ[p,I]V.T) f
       ) → (
         ∀f1,f2,f,I,L,V,T.
index 19161254885dd49d9ca9d8bc182bd4980d04220d..659060756188b3c46265e5a6cda5acd723cfc0d6 100644 (file)
@@ -22,7 +22,7 @@ include "static_2/static/frees.ma".
 
 definition fsle: bi_relation lenv term ≝ λL1,T1,L2,T2.
                  ∃∃n1,n2,f1,f2. L1 ⊢ 𝐅+❪T1❫ ≘ f1 & L2 ⊢ 𝐅+❪T2❫ ≘ f2 &
-                                L1 â\89\8bâ\93§*[n1,n2] L2 & â«±*[n1]f1 â\8a\86 â«±*[n2]f2.
+                                L1 â\89\8bâ\93§*[n1,n2] L2 & â«°*[n1]f1 â\8a\86 â«°*[n2]f2.
 
 interpretation "free variables inclusion (restricted closure)"
    'SubSetEq L1 T1 L2 T2 = (fsle L1 T1 L2 T2).
index 110e0fd08be6829db08f41239383fbc11e70aab9..718a74a8a8d578851090954d41f9885c12828304 100644 (file)
@@ -68,7 +68,7 @@ lemma fsle_inv_lifts_sn: ∀T1,U1. ⇧[1] T1 ≘ U1 →
 * #n #m #f2 #g2 #Hf2 #Hg2 #HL #Hfg2 #p
 elim (lveq_inv_pair_pair … HL) -HL #HL #H1 #H2 destruct
 elim (frees_total L2 V2) #g1 #Hg1
-elim (sor_isfin_ex g1 (⫱g2)) /3 width=3 by frees_fwd_isfin, isfin_tl/ #g #Hg #_
+elim (sor_isfin_ex g1 (â«°g2)) /3 width=3 by frees_fwd_isfin, isfin_tl/ #g #Hg #_
 lapply (frees_inv_lifts_SO (Ⓣ) … Hf2 … HTU1)
 [1,2: /3 width=4 by drops_refl, drops_drop/ ] -U1 #Hf2
 lapply (sor_inv_sle_dx … Hg) #H0g
index 242c3d52c500cdc7e56f3d5508c9010cfe4a8eeb..7965876e204ea4a774c57adec546bdbbbabb8bc2 100644 (file)
@@ -33,7 +33,7 @@ lemma fsle_shift: ∀L1,L2. |L1| = |L2| →
 elim (lveq_inj_length … H2L) // -H1L #H1 #H2 destruct
 lapply (lveq_inv_bind_O … H2L) -H2L #HL
 elim (frees_total L2 V) #g1 #Hg1
-elim (sor_isfin_ex g1 (⫱g2)) /3 width=3 by frees_fwd_isfin, isfin_tl/ #g #Hg #_
+elim (sor_isfin_ex g1 (â«°g2)) /3 width=3 by frees_fwd_isfin, isfin_tl/ #g #Hg #_
 lapply (sor_inv_sle_dx … Hg) #H0g
 /4 width=10 by frees_bind, lveq_void_sn, sle_tl, sle_trans, ex4_4_intro/
 qed.
@@ -42,7 +42,7 @@ lemma fsle_bind_dx_sn: ∀L1,L2,V1,V2. ❪L1,V1❫ ⊆ ❪L2,V2❫ →
                        ∀p,I,T2. ❪L1,V1❫ ⊆ ❪L2,ⓑ[p,I]V2.T2❫.
 #L1 #L2 #V1 #V2 * #n1 #m1 #f1 #g1 #Hf1 #Hg1 #HL12 #Hfg1 #p #I #T2
 elim (frees_total (L2.ⓧ) T2) #g2 #Hg2
-elim (sor_isfin_ex g1 (⫱g2)) /3 width=3 by frees_fwd_isfin, isfin_tl/ #g #Hg #_
+elim (sor_isfin_ex g1 (â«°g2)) /3 width=3 by frees_fwd_isfin, isfin_tl/ #g #Hg #_
 @(ex4_4_intro … g Hf1 … HL12) (**) (* full auto too slow *)
 /4 width=5 by frees_bind_void, sor_inv_sle_sn, sor_tls, sle_trans/
 qed.
@@ -53,7 +53,7 @@ lemma fsle_bind_dx_dx: ∀L1,L2,T1,T2. ❪L1,T1❫ ⊆ ❪L2.ⓧ,T2❫ → |L1|
 elim (lveq_inv_void_dx_length … H HL12) -H -HL12 #m1 #HL12 #H1 #H2 destruct
 <tls_xn in Hfg2; #Hfg2
 elim (frees_total L2 V2) #g1 #Hg1
-elim (sor_isfin_ex g1 (⫱g2)) /3 width=3 by frees_fwd_isfin, isfin_tl/ #g #Hg #_
+elim (sor_isfin_ex g1 (â«°g2)) /3 width=3 by frees_fwd_isfin, isfin_tl/ #g #Hg #_
 @(ex4_4_intro … g Hf2 … HL12) (**) (* full auto too slow *)
 /4 width=5 by frees_bind_void, sor_inv_sle_dx, sor_tls, sle_trans/
 qed.
index abbee2fdc19a4d3f418373b69eb7aaaf0ea9e99a..e9ebfb3811409c5865dd46c5f61bf3ec2bcb51d7 100644 (file)
@@ -22,7 +22,7 @@ include "static_2/static/fsle_fqup.ma".
 lemma fsle_frees_trans:
       ∀L1,L2,T1,T2. ❪L1,T1❫ ⊆ ❪L2,T2❫ →
       ∀f2. L2 ⊢ 𝐅+❪T2❫ ≘ f2 →
-      â\88\83â\88\83n1,n2,f1. L1 â\8a¢ ð\9d\90\85\9dªT1â\9d« â\89\98 f1 & L1 â\89\8bâ\93§*[n1,n2] L2 & â«±*[n1]f1 â\8a\86 â«±*[n2]f2.
+      â\88\83â\88\83n1,n2,f1. L1 â\8a¢ ð\9d\90\85\9dªT1â\9d« â\89\98 f1 & L1 â\89\8bâ\93§*[n1,n2] L2 & â«°*[n1]f1 â\8a\86 â«°*[n2]f2.
 #L1 #L2 #T1 #T2 * #n1 #n2 #f1 #g2 #Hf1 #Hg2 #HL #Hn #f2 #Hf2
 lapply (frees_mono … Hg2 … Hf2) -Hg2 -Hf2 #Hgf2
 lapply (tls_eq_repl n2 … Hgf2) -Hgf2 #Hgf2
@@ -53,7 +53,7 @@ qed-.
 lemma fsle_frees_conf:
       ∀L1,L2,T1,T2. ❪L1,T1❫ ⊆ ❪L2,T2❫ →
       ∀f1. L1 ⊢ 𝐅+❪T1❫ ≘ f1 →
-      â\88\83â\88\83n1,n2,f2. L2 â\8a¢ ð\9d\90\85\9dªT2â\9d« â\89\98 f2 & L1 â\89\8bâ\93§*[n1,n2] L2 & â«±*[n1]f1 â\8a\86 â«±*[n2]f2.
+      â\88\83â\88\83n1,n2,f2. L2 â\8a¢ ð\9d\90\85\9dªT2â\9d« â\89\98 f2 & L1 â\89\8bâ\93§*[n1,n2] L2 & â«°*[n1]f1 â\8a\86 â«°*[n2]f2.
 #L1 #L2 #T1 #T2 * #n1 #n2 #g1 #g2 #Hg1 #Hg2 #HL #Hn #f1 #Hf1
 lapply (frees_mono … Hg1 … Hf1) -Hg1 -Hf1 #Hgf1
 lapply (tls_eq_repl n1 … Hgf1) -Hgf1 #Hgf1
@@ -120,7 +120,7 @@ theorem fsle_bind_sn_ge:
 #L1 #L2 #HL #V1 #T1 #T * #n1 #x #f1 #g #Hf1 #Hg #H1n1 #H2n1 #H #p #I
 elim (fsle_frees_trans … H … Hg) -H #n2 #n #f2 #Hf2 #H1n2 #H2n2
 elim (lveq_inj_void_sn_ge … H1n1 … H1n2) -H1n2 // #H1 #H2 #H3 destruct
-elim (sor_isfin_ex f1 (⫱f2)) /3 width=3 by frees_fwd_isfin, isfin_tl/ #f #Hf #_
+elim (sor_isfin_ex f1 (â«°f2)) /3 width=3 by frees_fwd_isfin, isfin_tl/ #f #Hf #_
 <tls_xn in H2n2; #H2n2
 /4 width=12 by frees_bind_void, sor_inv_sle, sor_tls, ex4_4_intro/
 qed.
@@ -144,8 +144,8 @@ theorem fsle_bind_eq:
 * #n2 #m2 #f2 #g2 #Hf2 #Hg2 #H2L #Hfg2 #p #I1
 elim (lveq_inj_length … H1L) // #H1 #H2 destruct
 elim (lveq_inj_length … H2L) // -HL -H2L #H1 #H2 destruct
-elim (sor_isfin_ex f1 (⫱f2)) /3 width=3 by frees_fwd_isfin, isfin_tl/ #f #Hf #_
-elim (sor_isfin_ex g1 (⫱g2)) /3 width=3 by frees_fwd_isfin, isfin_tl/ #g #Hg #_
+elim (sor_isfin_ex f1 (â«°f2)) /3 width=3 by frees_fwd_isfin, isfin_tl/ #f #Hf #_
+elim (sor_isfin_ex g1 (â«°g2)) /3 width=3 by frees_fwd_isfin, isfin_tl/ #g #Hg #_
 /4 width=15 by frees_bind_void, frees_bind, monotonic_sle_sor, sle_tl, ex4_4_intro/
 qed.
 
@@ -158,8 +158,8 @@ theorem fsle_bind:
 * #n2 #m2 #f2 #g2 #Hf2 #Hg2 #H2L #Hfg2 #p
 elim (lveq_inv_pair_pair … H2L) -H2L #H2L #H1 #H2 destruct
 elim (lveq_inj … H2L … H1L) -H1L #H1 #H2 destruct
-elim (sor_isfin_ex f1 (⫱f2)) /3 width=3 by frees_fwd_isfin, isfin_tl/ #f #Hf #_
-elim (sor_isfin_ex g1 (⫱g2)) /3 width=3 by frees_fwd_isfin, isfin_tl/ #g #Hg #_
+elim (sor_isfin_ex f1 (â«°f2)) /3 width=3 by frees_fwd_isfin, isfin_tl/ #f #Hf #_
+elim (sor_isfin_ex g1 (â«°g2)) /3 width=3 by frees_fwd_isfin, isfin_tl/ #g #Hg #_
 /4 width=15 by frees_bind, monotonic_sle_sor, sle_tl, ex4_4_intro/
 qed.
 
index 95cec9a8770af3854146b8f83915535b84073bc5..8e63f58d2731c9390fe1ae767dca6e9ad6effec5 100644 (file)
@@ -270,7 +270,7 @@ qed-.
 (* Basic forward lemmas *****************************************************)
 
 lemma lsubf_fwd_bind_tl:
-      â\88\80f1,f2,I,L1,L2. â\9dªL1.â\93\98[I],f1â\9d« â«\83ð\9d\90\85+ â\9dªL2.â\93\98[I],f2â\9d« â\86\92 â\9dªL1,⫱f1â\9d« â«\83ð\9d\90\85+ â\9dªL2,⫱f2❫.
+      â\88\80f1,f2,I,L1,L2. â\9dªL1.â\93\98[I],f1â\9d« â«\83ð\9d\90\85+ â\9dªL2.â\93\98[I],f2â\9d« â\86\92 â\9dªL1,â«°f1â\9d« â«\83ð\9d\90\85+ â\9dªL2,â«°f2❫.
 #f1 #f2 #I #L1 #L2 #H
 elim (pn_split f1) * #g1 #H0 destruct
 [ elim (lsubf_inv_push_sn … H) | elim (lsubf_inv_bind_sn … H) ] -H
@@ -360,8 +360,8 @@ lemma lsubf_refl_eq: ∀f1,f2,L. f1 ≡ f2 → ❪L,f1❫ ⫃𝐅+ ❪L,f2❫.
 /2 width=3 by lsubf_eq_repl_back2/ qed.
 
 lemma lsubf_bind_tl_dx:
-      â\88\80g1,f2,I,L1,L2. â\9dªL1,g1â\9d« â«\83ð\9d\90\85+ â\9dªL2,⫱f2❫ →
-      â\88\83â\88\83f1. â\9dªL1.â\93\98[I],f1â\9d« â«\83ð\9d\90\85+ â\9dªL2.â\93\98[I],f2â\9d« & g1 = â«±f1.
+      â\88\80g1,f2,I,L1,L2. â\9dªL1,g1â\9d« â«\83ð\9d\90\85+ â\9dªL2,â«°f2❫ →
+      â\88\83â\88\83f1. â\9dªL1.â\93\98[I],f1â\9d« â«\83ð\9d\90\85+ â\9dªL2.â\93\98[I],f2â\9d« & g1 = â«°f1.
 #g1 #f2 #I #L1 #L2 #H
 elim (pn_split f2) * #g2 #H2 destruct
 @ex2_intro [1,2,4,5: /2 width=2 by lsubf_push, lsubf_bind/ ] // (**) (* constructor needed *)
@@ -369,8 +369,8 @@ qed-.
 
 lemma lsubf_beta_tl_dx:
       ∀f,f0,g1,L1,V. L1 ⊢ 𝐅+❪V❫ ≘ f → f0 ⋓ f ≘ g1 →
-      â\88\80f2,L2,W. â\9dªL1,f0â\9d« â«\83ð\9d\90\85+ â\9dªL2,⫱f2❫ →
-      â\88\83â\88\83f1. â\9dªL1.â\93\93â\93\9dW.V,f1â\9d« â«\83ð\9d\90\85+ â\9dªL2.â\93\9bW,f2â\9d« & â«±f1 ⊆ g1.
+      â\88\80f2,L2,W. â\9dªL1,f0â\9d« â«\83ð\9d\90\85+ â\9dªL2,â«°f2❫ →
+      â\88\83â\88\83f1. â\9dªL1.â\93\93â\93\9dW.V,f1â\9d« â«\83ð\9d\90\85+ â\9dªL2.â\93\9bW,f2â\9d« & â«°f1 ⊆ g1.
 #f #f0 #g1 #L1 #V #Hf #Hg1 #f2
 elim (pn_split f2) * #x2 #H2 #L2 #W #HL12 destruct
 [ /3 width=4 by lsubf_push, sor_inv_sle_sn, ex2_intro/
index dba0cb30be483d6957b4bf91a8009f39b1189b56..b6374ac0b04edbdd5bbe445b8c16e038b79282fa 100644 (file)
@@ -40,12 +40,12 @@ definition f_dropable_dx:
 definition f_transitive_next:
            relation3 … ≝ λR1,R2,R3.
            ∀f,L,T. L ⊢ 𝐅+❪T❫ ≘ f →
-           â\88\80g,I,K,i. â\87©[i] L â\89\98 K.â\93\98[I] â\86\92 â\86\91g = â«±*[i] f →
+           â\88\80g,I,K,i. â\87©[i] L â\89\98 K.â\93\98[I] â\86\92 â\86\91g = â«°*[i] f →
            R_pw_transitive_sex (cext2 R1) (cext2 R2) (cext2 R3) (cext2 R1) cfull g K I.
 
 definition f_confluent1_next: relation2 … ≝ λR1,R2.
            ∀f,L,T. L ⊢ 𝐅+❪T❫ ≘ f →
-           â\88\80g,I,K,i. â\87©[i] L â\89\98 K.â\93\98[I] â\86\92 â\86\91g = â«±*[i] f →
+           â\88\80g,I,K,i. â\87©[i] L â\89\98 K.â\93\98[I] â\86\92 â\86\91g = â«°*[i] f →
            R_pw_confluent1_sex (cext2 R1) (cext2 R1) (cext2 R2) cfull g K I.
 
 (* Properties with generic slicing for local environments *******************)
index 5604348bf9c82b7e147b8850d61b53b21dee0bf6..ba250697aa4eb12fcc0a19feb494101870cba3d1 100644 (file)
@@ -45,7 +45,7 @@ theorem rex_bind (R) (p) (I):
         ∀L1,L2,V1,V2,T. L1 ⪤[R,V1] L2 → L1.ⓑ[I]V1 ⪤[R,T] L2.ⓑ[I]V2 →
         L1 ⪤[R,ⓑ[p,I]V1.T] L2.
 #R #p #I #L1 #L2 #V1 #V2 #T * #f1 #HV #Hf1 * #f2 #HT #Hf2
-lapply (sex_fwd_bind â\80¦ Hf2) -Hf2 #Hf2 elim (sor_isfin_ex f1 (⫱f2))
+lapply (sex_fwd_bind â\80¦ Hf2) -Hf2 #Hf2 elim (sor_isfin_ex f1 (â«°f2))
 /3 width=7 by frees_fwd_isfin, frees_bind, sex_join, isfin_tl, ex2_intro/
 qed.
 
@@ -59,7 +59,7 @@ qed.
 theorem rex_bind_void (R) (p) (I):
         ∀L1,L2,V,T. L1 ⪤[R,V] L2 → L1.ⓧ ⪤[R,T] L2.ⓧ → L1 ⪤[R,ⓑ[p,I]V.T] L2.
 #R #p #I #L1 #L2 #V #T * #f1 #HV #Hf1 * #f2 #HT #Hf2
-lapply (sex_fwd_bind â\80¦ Hf2) -Hf2 #Hf2 elim (sor_isfin_ex f1 (⫱f2))
+lapply (sex_fwd_bind â\80¦ Hf2) -Hf2 #Hf2 elim (sor_isfin_ex f1 (â«°f2))
 /3 width=7 by frees_fwd_isfin, frees_bind_void, sex_join, isfin_tl, ex2_intro/
 qed.
 
index 09bcabd573932f74ae77e20f153343f2564ac66b..671b2b0319bf48bc296b858df925987381ca8b82 100644 (file)
@@ -1521,7 +1521,7 @@ let predefined_classes = [
  ["⇕"; "⇳"; "⬍"; "↕"; ];
  ["↔"; "⇔"; "⬄"; "⬌"; ] ; 
  ["≤"; "≲"; "≼"; "≰"; "≴"; "⋠"; "⊆"; "⫃"; "⊑"; ] ;
- ["_"; "↓"; "↙"; "⎽"; "⎼"; "⎻"; "⎺"; ];
+ ["_"; "â\86\93"; "â\86\99"; "â\87£"; "â\8e½"; "â\8e¼"; "â\8e»"; "â\8eº"; ];
  ["<"; "≺"; "≮"; "⊀"; "〈"; "«"; "❬"; "❮"; "❰"; ] ;
  ["("; "❨"; "❪"; "❲"; "("; ];
  [")"; "❩"; "❫"; "❳"; ")"; ];