Step
*
1
4
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)])
⊢ ((↑isname(((a1:=a2) o face-maps-comp(L)) y))
⇒ ((¬(y ∈ [a1 / map(λp.(fst(p));L)])) ∧ ((((a1:=a2) o face-maps-comp(L)) y) = y ∈ nameset(I))))
∧ ((¬↑isname(((a1:=a2) o face-maps-comp(L)) y))
  
⇒ ((y ∈ [a1 / map(λp.(fst(p));L)])
     ∧ ((((a1:=a2) o face-maps-comp(L)) y)
       = outl(if eqof(CnameDeq) a1 y then inl a2 else apply-alist(CnameDeq;L;y) fi )
       ∈ ℕ2)))
BY
{ (Decide y = a1 ∈ Cname THENA Auto) }
1
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)) y))
⇒ ((¬(y ∈ [a1 / map(λp.(fst(p));L)])) ∧ ((((a1:=a2) o face-maps-comp(L)) y) = y ∈ nameset(I))))
∧ ((¬↑isname(((a1:=a2) o face-maps-comp(L)) y))
  
⇒ ((y ∈ [a1 / map(λp.(fst(p));L)])
     ∧ ((((a1:=a2) o face-maps-comp(L)) y)
       = outl(if eqof(CnameDeq) a1 y then inl a2 else apply-alist(CnameDeq;L;y) fi )
       ∈ ℕ2)))
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(((a1:=a2) o face-maps-comp(L)) y))
⇒ ((¬(y ∈ [a1 / map(λp.(fst(p));L)])) ∧ ((((a1:=a2) o face-maps-comp(L)) y) = y ∈ nameset(I))))
∧ ((¬↑isname(((a1:=a2) o face-maps-comp(L)) y))
  
⇒ ((y ∈ [a1 / map(λp.(fst(p));L)])
     ∧ ((((a1:=a2) o face-maps-comp(L)) y)
       = outl(if eqof(CnameDeq) a1 y then inl a2 else apply-alist(CnameDeq;L;y) 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)])
\mvdash{}  ((\muparrow{}isname(((a1:=a2)  o  face-maps-comp(L))  y))
{}\mRightarrow{}  ((\mneg{}(y  \mmember{}  [a1  /  map(\mlambda{}p.(fst(p));L)]))  \mwedge{}  ((((a1:=a2)  o  face-maps-comp(L))  y)  =  y)))
\mwedge{}  ((\mneg{}\muparrow{}isname(((a1:=a2)  o  face-maps-comp(L))  y))
    {}\mRightarrow{}  ((y  \mmember{}  [a1  /  map(\mlambda{}p.(fst(p));L)])
          \mwedge{}  ((((a1:=a2)  o  face-maps-comp(L))  y)
              =  outl(if  eqof(CnameDeq)  a1  y  then  inl  a2  else  apply-alist(CnameDeq;L;y)  fi  ))))
By
Latex:
(Decide  y  =  a1  THENA  Auto)
Home
Index