Step
*
1
4
1
1
1
1
1
of Lemma
face-maps-comp-property
1. a1 : Cname
2. a2 : ℕ2
3. L : (Cname × ℕ2) List
4. ∀[I:Cname List]
     ∀y:nameset(map(λp.(fst(p));L) @ I)
       (((↑isname(face-maps-comp(L) y)) 
⇒ ((¬(y ∈ map(λp.(fst(p));L))) ∧ ((face-maps-comp(L) y) = y ∈ nameset(I))))
       ∧ ((¬↑isname(face-maps-comp(L) y))
         
⇒ ((y ∈ map(λp.(fst(p));L)) ∧ ((face-maps-comp(L) y) = outl(apply-alist(CnameDeq;L;y)) ∈ ℕ2))))
5. [I] : Cname List
6. y : nameset([a1 / (map(λp.(fst(p));L) @ I)])
7. y = a1 ∈ Cname
⊢ ((↑isname(((a1:=a2) o face-maps-comp(L)) a1))
⇒ ((¬(a1 ∈ [a1 / map(λp.(fst(p));L)])) ∧ ((((a1:=a2) o face-maps-comp(L)) a1) = a1 ∈ nameset(I))))
∧ ((¬↑isname(((a1:=a2) o face-maps-comp(L)) a1))
  
⇒ ((a1 ∈ [a1 / map(λp.(fst(p));L)])
     ∧ ((((a1:=a2) o face-maps-comp(L)) a1)
       = outl(if eqof(CnameDeq) a1 a1 then inl a2 else apply-alist(CnameDeq;L;a1) fi )
       ∈ ℕ2)))
BY
{ TACTIC:(RepUR ``name-comp`` 0 THEN Subst' (a1:=a2) a1 ~ a2 0) }
1
.....equality..... 
1. a1 : Cname
2. a2 : ℕ2
3. L : (Cname × ℕ2) List
4. ∀[I:Cname List]
     ∀y:nameset(map(λp.(fst(p));L) @ I)
       (((↑isname(face-maps-comp(L) y)) 
⇒ ((¬(y ∈ map(λp.(fst(p));L))) ∧ ((face-maps-comp(L) y) = y ∈ nameset(I))))
       ∧ ((¬↑isname(face-maps-comp(L) y))
         
⇒ ((y ∈ map(λp.(fst(p));L)) ∧ ((face-maps-comp(L) y) = outl(apply-alist(CnameDeq;L;y)) ∈ ℕ2))))
5. I : Cname List
6. y : nameset([a1 / (map(λp.(fst(p));L) @ I)])
7. y = a1 ∈ Cname
⊢ (a1:=a2) a1 ~ a2
2
1. a1 : Cname
2. a2 : ℕ2
3. L : (Cname × ℕ2) List
4. ∀[I:Cname List]
     ∀y:nameset(map(λp.(fst(p));L) @ I)
       (((↑isname(face-maps-comp(L) y)) 
⇒ ((¬(y ∈ map(λp.(fst(p));L))) ∧ ((face-maps-comp(L) y) = y ∈ nameset(I))))
       ∧ ((¬↑isname(face-maps-comp(L) y))
         
⇒ ((y ∈ map(λp.(fst(p));L)) ∧ ((face-maps-comp(L) y) = outl(apply-alist(CnameDeq;L;y)) ∈ ℕ2))))
5. [I] : Cname List
6. y : nameset([a1 / (map(λp.(fst(p));L) @ I)])
7. y = a1 ∈ Cname
⊢ ((↑isname(uext(face-maps-comp(L)) a2))
⇒ ((¬(a1 ∈ [a1 / map(λp.(fst(p));L)])) ∧ ((uext(face-maps-comp(L)) a2) = a1 ∈ nameset(I))))
∧ ((¬↑isname(uext(face-maps-comp(L)) a2))
  
⇒ ((a1 ∈ [a1 / map(λp.(fst(p));L)])
     ∧ ((uext(face-maps-comp(L)) a2)
       = outl(if eqof(CnameDeq) a1 a1 then inl a2 else apply-alist(CnameDeq;L;a1) fi )
       ∈ ℕ2)))
Latex:
Latex:
1.  a1  :  Cname
2.  a2  :  \mBbbN{}2
3.  L  :  (Cname  \mtimes{}  \mBbbN{}2)  List
4.  \mforall{}[I:Cname  List]
          \mforall{}y:nameset(map(\mlambda{}p.(fst(p));L)  @  I)
              (((\muparrow{}isname(face-maps-comp(L)  y))
              {}\mRightarrow{}  ((\mneg{}(y  \mmember{}  map(\mlambda{}p.(fst(p));L)))  \mwedge{}  ((face-maps-comp(L)  y)  =  y)))
              \mwedge{}  ((\mneg{}\muparrow{}isname(face-maps-comp(L)  y))
                  {}\mRightarrow{}  ((y  \mmember{}  map(\mlambda{}p.(fst(p));L))  \mwedge{}  ((face-maps-comp(L)  y)  =  outl(apply-alist(CnameDeq;L;y))))))
5.  [I]  :  Cname  List
6.  y  :  nameset([a1  /  (map(\mlambda{}p.(fst(p));L)  @  I)])
7.  y  =  a1
\mvdash{}  ((\muparrow{}isname(((a1:=a2)  o  face-maps-comp(L))  a1))
{}\mRightarrow{}  ((\mneg{}(a1  \mmember{}  [a1  /  map(\mlambda{}p.(fst(p));L)]))  \mwedge{}  ((((a1:=a2)  o  face-maps-comp(L))  a1)  =  a1)))
\mwedge{}  ((\mneg{}\muparrow{}isname(((a1:=a2)  o  face-maps-comp(L))  a1))
    {}\mRightarrow{}  ((a1  \mmember{}  [a1  /  map(\mlambda{}p.(fst(p));L)])
          \mwedge{}  ((((a1:=a2)  o  face-maps-comp(L))  a1)
              =  outl(if  eqof(CnameDeq)  a1  a1  then  inl  a2  else  apply-alist(CnameDeq;L;a1)  fi  ))))
By
Latex:
TACTIC:(RepUR  ``name-comp``  0  THEN  Subst'  (a1:=a2)  a1  \msim{}  a2  0)
Home
Index