Step * 3 1 1 2 1 of Lemma cu-filler-cases


1. Cname List
2. nameset(I) List
3. Cname List
4. nameset(I)
5. name-morph(I-[x];K)
6. : ℕ2
7. box open_box(c𝕌;I;J;x;i)
8. J ∈ nameset(J) List
9. nameset(J) ⊆nameset(I-[x])
10. x1 : ∃y:nameset(J) [((y ∈ J) ∧ (↑¬bisname(f y)))]
11. l-first(y.¬bisname(f y);J) (inl x1) ∈ ((∃y:nameset(J) [((y ∈ J) ∧ (↑¬bisname(f y)))]) ∨ (∀y∈J.¬↑¬bisname(f y)))
12. x6 (∀y∈J.¬↑¬bisname(f y))
13. x7 : ↑isr(inl x1)
14. x3 f[x:=fresh-cname(K)] ∈ name-morph(I;[fresh-cname(K) K])
15. x4 nameset([x J]) ⊆nameset(I)
16. x5 : ∀z:nameset([x J]). (↑isname(f[x:=fresh-cname(K)] z))
⊢ f[x:=fresh-cname(K)] ∈ nameset([x J]) ⟶ nameset([fresh-cname(K) K])
BY
((FunExt THENA Auto) THEN (InstHyp [⌜x8⌝(-2)⋅ THENA Auto) THEN FLemma `assert-isname` [-1] THEN Auto) }


Latex:


Latex:

1.  I  :  Cname  List
2.  J  :  nameset(I)  List
3.  K  :  Cname  List
4.  x  :  nameset(I)
5.  f  :  name-morph(I-[x];K)
6.  i  :  \mBbbN{}2
7.  box  :  open\_box(c\mBbbU{};I;J;x;i)
8.  J  \mmember{}  nameset(J)  List
9.  nameset(J)  \msubseteq{}r  nameset(I-[x])
10.  x1  :  \mexists{}y:nameset(J)  [((y  \mmember{}  J)  \mwedge{}  (\muparrow{}\mneg{}\msubb{}isname(f  y)))]
11.  l-first(y.\mneg{}\msubb{}isname(f  y);J)  =  (inl  x1)
12.  x6  :  (\mforall{}y\mmember{}J.\mneg{}\muparrow{}\mneg{}\msubb{}isname(f  y))
13.  x7  :  \muparrow{}isr(inl  x1)
14.  x3  :  f[x:=fresh-cname(K)]  \mmember{}  name-morph(I;[fresh-cname(K)  /  K])
15.  x4  :  nameset([x  /  J])  \msubseteq{}r  nameset(I)
16.  x5  :  \mforall{}z:nameset([x  /  J]).  (\muparrow{}isname(f[x:=fresh-cname(K)]  z))
\mvdash{}  f[x:=fresh-cname(K)]  \mmember{}  nameset([x  /  J])  {}\mrightarrow{}  nameset([fresh-cname(K)  /  K])


By


Latex:
((FunExt  THENA  Auto)
  THEN  (InstHyp  [\mkleeneopen{}x8\mkleeneclose{}]  (-2)\mcdot{}  THENA  Auto)
  THEN  FLemma  `assert-isname`  [-1]
  THEN  Auto)




Home Index