Step
*
of Lemma
name-morph-inv-eq
∀[I,J:Cname List]. ∀[f:name-morph(I;J)]. ∀[x:nameset(I)].
  (name-morph-inv(I;f) (f x)) = x ∈ nameset(I) supposing ↑isname(f x)
BY
{ TACTIC:((Auto THEN Unfold `name-morph-inv` 0)
          THEN Reduce 0
          THEN (FLemma `assert-isname` [-1] THENA Auto)
          THEN (Assert λi.(isname(f i) ∧b (f i =z f x)) ∈ nameset(I) ⟶ 𝔹 BY
                      (Auto THEN ((FLemma `assert-isname` [-1] THEN Auto) ORELSE (Unfold `nameset` 0 THEN Auto))))) }
1
1. I : Cname List
2. J : Cname List
3. f : name-morph(I;J)
4. x : nameset(I)
5. ↑isname(f x)
6. f x ∈ nameset(J)
7. λi.(isname(f i) ∧b (f i =z f x)) ∈ nameset(I) ⟶ 𝔹
⊢ hd(filter(λi.(isname(f i) ∧b (f i =z f x));I)) = x ∈ nameset(I)
Latex:
Latex:
\mforall{}[I,J:Cname  List].  \mforall{}[f:name-morph(I;J)].  \mforall{}[x:nameset(I)].
    (name-morph-inv(I;f)  (f  x))  =  x  supposing  \muparrow{}isname(f  x)
By
Latex:
TACTIC:((Auto  THEN  Unfold  `name-morph-inv`  0)
                THEN  Reduce  0
                THEN  (FLemma  `assert-isname`  [-1]  THENA  Auto)
                THEN  (Assert  \mlambda{}i.(isname(f  i)  \mwedge{}\msubb{}  (f  i  =\msubz{}  f  x))  \mmember{}  nameset(I)  {}\mrightarrow{}  \mBbbB{}  BY
                                        (Auto
                                          THEN  ((FLemma  `assert-isname`  [-1]  THEN  Auto)
                                                    ORELSE  (Unfold  `nameset`  0  THEN  Auto)
                                                    )
                                          )))
Home
Index