(*** after_at1_fwd *)
lemma pr_after_des_ist_pat:
- ∀f1,i1,i2. @❨i1, f1❩ ≘ i2 → ∀f2. 𝐓❨f2❩ → ∀f. f2 ⊚ f1 ≘ f →
- ∃∃i. @❨i2, f2❩ ≘ i & @❨i1, f❩ ≘ i.
+ ∀f1,i1,i2. @⧣❨i1, f1❩ ≘ i2 → ∀f2. 𝐓❨f2❩ → ∀f. f2 ⊚ f1 ≘ f →
+ ∃∃i. @⧣❨i2, f2❩ ≘ i & @⧣❨i1, f❩ ≘ i.
#f1 #i1 #i2 #Hf1 #f2 #Hf2 #f #Hf elim (Hf2 i2) -Hf2
/3 width=8 by pr_after_des_pat, ex2_intro/
qed-.
lemma pr_after_des_ist_nat:
- ∀f1,l1,l2. @↑❨l1, f1❩ ≘ l2 → ∀f2. 𝐓❨f2❩ → ∀f. f2 ⊚ f1 ≘ f →
- ∃∃l. @↑❨l2, f2❩ ≘ l & @↑❨l1, f❩ ≘ l.
+ ∀f1,l1,l2. @§❨l1, f1❩ ≘ l2 → ∀f2. 𝐓❨f2❩ → ∀f. f2 ⊚ f1 ≘ f →
+ ∃∃l. @§❨l2, f2❩ ≘ l & @§❨l1, f❩ ≘ l.
#f1 #l1 #l2 #H1 #f2 #H2 #f #Hf
elim (pr_after_des_ist_pat … H1 … H2 … Hf) -f1 -H2
/2 width=3 by ex2_intro/