include "delayed_updating/substitution/fsubst.ma".
include "delayed_updating/syntax/prototerm_equivalence.ma".
include "delayed_updating/syntax/path_head.ma".
-include "delayed_updating/syntax/path_depth.ma".
include "delayed_updating/syntax/path_reverse.ma".
include "delayed_updating/notation/relations/black_rightarrow_f_4.ma".
λt1,t2. ∃n:pnat.
let r ≝ p●𝗔◗𝗟◗q in
∧∧ (𝗟◗q)ᴿ = ↳[n](rᴿ) & r◖𝗱n ϵ t1 &
- t1[⋔r←▼[𝐮❨♭(𝗟◗q)❩](t1⋔(p◖𝗦))] ⇔ t2
+ t1[⋔r←▼[𝐮❨n❩](t1⋔(p◖𝗦))] ⇔ t2
.
interpretation
- "focused balanced reduction with immediate updating (prototerm)"
+ "focused reduction with immediate updating (prototerm)"
'BlackRightArrowF t1 p q t2 = (ifr p q t1 t2).
(* Constructions with unwind ************************************************)
-theorem ifr_unwind_bi (f) (p) (q) (t1) (t2):
- t1 ϵ 𝐓 → t1⋔(p◖𝗦) ⧸≬ 𝐈 →
- t1 ➡𝐟[p,q] t2 → ▼[f]t1 ➡𝐟[⊗p,⊗q] ▼[f]t2.
+lemma ifr_unwind_bi (f) (p) (q) (t1) (t2):
+ t1 ϵ 𝐓 → t1⋔(p◖𝗦) ⧸≬ 𝐈 →
+ t1 ➡𝐟[p,q] t2 → ▼[f]t1 ➡𝐟[⊗p,⊗q] ▼[f]t2.
#f #p #q #t1 #t2 #H1t1 #H2t1
* #n * #H1n #Ht1 #Ht2
@(ex_intro … (↑♭q)) @and3_intro