Step
*
1
2
1
1
2
1
1
1
of Lemma
name-morph-decomp
1. I : Cname List
2. J : Cname List
3. f : nameset(I) ⟶ extd-nameset(J)
4. ∀i,j:nameset(I).  ((↑isname(f i)) 
⇒ (↑isname(f j)) 
⇒ ((f i) = (f j) ∈ extd-nameset(J)) 
⇒ (i = j ∈ nameset(I)))
5. ∀[f@0:{x:nameset(I)| ↑¬bisname(f x)}  ⟶ (Cname × ℕ2)]. (mapfilter(f@0;λx.(¬bisname(f x));I) ∈ (Cname × ℕ2) List)
6. mapfilter(λx.<x, f x>λx.(¬bisname(f x));I) ∈ (Cname × ℕ2) List
7. nameset(I) ≡ nameset(filter(λx.(¬bisname(f x));I) @ filter(λx.isname(f x);I))
8. nameset(I) ≡ nameset(filter(λx.(¬bisname(f x));I) @ filter(λx.isname(f x);I))
9. z : nameset(filter(λx.isname(f x);I))
⊢ f z ∈ nameset(J)
BY
{ (D -1 THEN (RW ListC (-1) THENA Auto) THEN Reduce (-1) THEN D -1) }
1
1. I : Cname List
2. J : Cname List
3. f : nameset(I) ⟶ extd-nameset(J)
4. ∀i,j:nameset(I).  ((↑isname(f i)) 
⇒ (↑isname(f j)) 
⇒ ((f i) = (f j) ∈ extd-nameset(J)) 
⇒ (i = j ∈ nameset(I)))
5. ∀[f@0:{x:nameset(I)| ↑¬bisname(f x)}  ⟶ (Cname × ℕ2)]. (mapfilter(f@0;λx.(¬bisname(f x));I) ∈ (Cname × ℕ2) List)
6. mapfilter(λx.<x, f x>λx.(¬bisname(f x));I) ∈ (Cname × ℕ2) List
7. nameset(I) ≡ nameset(filter(λx.(¬bisname(f x));I) @ filter(λx.isname(f x);I))
8. nameset(I) ≡ nameset(filter(λx.(¬bisname(f x));I) @ filter(λx.isname(f x);I))
9. z : Cname
10. (z ∈ I)
11. ↑isname(f z)
⊢ f z ∈ nameset(J)
Latex:
Latex:
1.  I  :  Cname  List
2.  J  :  Cname  List
3.  f  :  nameset(I)  {}\mrightarrow{}  extd-nameset(J)
4.  \mforall{}i,j:nameset(I).    ((\muparrow{}isname(f  i))  {}\mRightarrow{}  (\muparrow{}isname(f  j))  {}\mRightarrow{}  ((f  i)  =  (f  j))  {}\mRightarrow{}  (i  =  j))
5.  \mforall{}[f@0:\{x:nameset(I)|  \muparrow{}\mneg{}\msubb{}isname(f  x)\}    {}\mrightarrow{}  (Cname  \mtimes{}  \mBbbN{}2)]
          (mapfilter(f@0;\mlambda{}x.(\mneg{}\msubb{}isname(f  x));I)  \mmember{}  (Cname  \mtimes{}  \mBbbN{}2)  List)
6.  mapfilter(\mlambda{}x.<x,  f  x>\mlambda{}x.(\mneg{}\msubb{}isname(f  x));I)  \mmember{}  (Cname  \mtimes{}  \mBbbN{}2)  List
7.  nameset(I)  \mequiv{}  nameset(filter(\mlambda{}x.(\mneg{}\msubb{}isname(f  x));I)  @  filter(\mlambda{}x.isname(f  x);I))
8.  nameset(I)  \mequiv{}  nameset(filter(\mlambda{}x.(\mneg{}\msubb{}isname(f  x));I)  @  filter(\mlambda{}x.isname(f  x);I))
9.  z  :  nameset(filter(\mlambda{}x.isname(f  x);I))
\mvdash{}  f  z  \mmember{}  nameset(J)
By
Latex:
(D  -1  THEN  (RW  ListC  (-1)  THENA  Auto)  THEN  Reduce  (-1)  THEN  D  -1)
Home
Index