Step
*
1
4
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))))
⊢ ∀[I:Cname List]
    ∀y:nameset(map(λp.(fst(p));[<a1, a2> / L]) @ I)
      (((↑isname(face-maps-comp([<a1, a2> / L]) y))
      
⇒ ((¬(y ∈ map(λp.(fst(p));[<a1, a2> / L]))) ∧ ((face-maps-comp([<a1, a2> / L]) y) = y ∈ nameset(I))))
      ∧ ((¬↑isname(face-maps-comp([<a1, a2> / L]) y))
        
⇒ ((y ∈ map(λp.(fst(p));[<a1, a2> / L]))
           ∧ ((face-maps-comp([<a1, a2> / L]) y) = outl(apply-alist(CnameDeq;[<a1, a2> / L];y)) ∈ ℕ2))))
BY
{ ((Unfold `face-maps-comp` 0 THEN Reduce 0 THEN Fold `face-maps-comp` 0) THEN RepeatFor 2 ((D 0 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)])
⊢ ((↑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))))))
\mvdash{}  \mforall{}[I:Cname  List]
        \mforall{}y:nameset(map(\mlambda{}p.(fst(p));[<a1,  a2>  /  L])  @  I)
            (((\muparrow{}isname(face-maps-comp([<a1,  a2>  /  L])  y))
            {}\mRightarrow{}  ((\mneg{}(y  \mmember{}  map(\mlambda{}p.(fst(p));[<a1,  a2>  /  L])))  \mwedge{}  ((face-maps-comp([<a1,  a2>  /  L])  y)  =  y)))
            \mwedge{}  ((\mneg{}\muparrow{}isname(face-maps-comp([<a1,  a2>  /  L])  y))
                {}\mRightarrow{}  ((y  \mmember{}  map(\mlambda{}p.(fst(p));[<a1,  a2>  /  L]))
                      \mwedge{}  ((face-maps-comp([<a1,  a2>  /  L])  y)  =  outl(apply-alist(CnameDeq;[<a1,  a2>  /  L];y))))))
By
Latex:
((Unfold  `face-maps-comp`  0  THEN  Reduce  0  THEN  Fold  `face-maps-comp`  0)
  THEN  RepeatFor  2  ((D  0  THENA  Auto))
  )
Home
Index