Step * 1 of Lemma name-morph-extend_wf


1. Cname List
2. Cname List
3. name-morph(I;J)
4. Cname
5. ¬(v ∈ I)
6. fresh-cname(I) v ∈ {x:Cname| ¬(x ∈ I)} 
7. v1 Cname
8. ¬(v1 ∈ J)
9. fresh-cname(J) v1 ∈ {x:Cname| ¬(x ∈ J)} 
⊢ λx.if CnameDeq then v1 else fi  ∈ name-morph([v I];[v1 J])
BY
TACTIC:Assert ⌜extd-nameset(J) ⊆extd-nameset([v1 J])⌝⋅ }

1
.....assertion..... 
1. Cname List
2. Cname List
3. name-morph(I;J)
4. Cname
5. ¬(v ∈ I)
6. fresh-cname(I) v ∈ {x:Cname| ¬(x ∈ I)} 
7. v1 Cname
8. ¬(v1 ∈ J)
9. fresh-cname(J) v1 ∈ {x:Cname| ¬(x ∈ J)} 
⊢ extd-nameset(J) ⊆extd-nameset([v1 J])

2
1. Cname List
2. Cname List
3. name-morph(I;J)
4. Cname
5. ¬(v ∈ I)
6. fresh-cname(I) v ∈ {x:Cname| ¬(x ∈ I)} 
7. v1 Cname
8. ¬(v1 ∈ J)
9. fresh-cname(J) v1 ∈ {x:Cname| ¬(x ∈ J)} 
10. extd-nameset(J) ⊆extd-nameset([v1 J])
⊢ λx.if CnameDeq then v1 else fi  ∈ name-morph([v I];[v1 J])


Latex:


Latex:

1.  I  :  Cname  List
2.  J  :  Cname  List
3.  f  :  name-morph(I;J)
4.  v  :  Cname
5.  \mneg{}(v  \mmember{}  I)
6.  fresh-cname(I)  =  v
7.  v1  :  Cname
8.  \mneg{}(v1  \mmember{}  J)
9.  fresh-cname(J)  =  v1
\mvdash{}  \mlambda{}x.if  CnameDeq  x  v  then  v1  else  f  x  fi    \mmember{}  name-morph([v  /  I];[v1  /  J])


By


Latex:
TACTIC:Assert  \mkleeneopen{}extd-nameset(J)  \msubseteq{}r  extd-nameset([v1  /  J])\mkleeneclose{}\mcdot{}




Home Index