Step * 1 1 2 of Lemma assert-PZF_safe


1. Type
2. left Form(C)
3. right Form(C)
4. ∀vs:Atom List. (↑(FormSafe2(left) vs) ⇐⇒ FormSafe1''(left) vs)
5. ∀vs:Atom List. (↑(FormSafe2(right) vs) ⇐⇒ FormSafe1''(right) vs)
6. vs Atom List
7. ¬(vs [] ∈ (Atom List))
8. Atom
9. hd(vs) x ∈ Atom
10. ∀x:Atom. ((x ∈ vs)  (vs-[x] [] ∈ (Atom List) ⇐⇒ set-equal(Atom;vs;[x])))
11. x1 Atom
12. set-equal(Atom;vs;[x1])
13. ((↑FormVar?(left)) ∧ (FormVar-name(left) x1 ∈ Atom) ∧ (x1 ∈ FormFvs(right))))
∨ ((↑FormVar?(right)) ∧ (FormVar-name(right) x1 ∈ Atom) ∧ (x1 ∈ FormFvs(left))))
⊢ ↑(null(vs-[x])
b ((FormVar?(left) ∧b FormVar-name(left) =a x ∧b bx ∈b FormFvs(right)))
   ∨b(FormVar?(right) ∧b FormVar-name(right) =a x ∧b bx ∈b FormFvs(left)))))
BY
(InstHyp [⌜x1⌝(-4)⋅ THENA Auto) }

1
1. Type
2. left Form(C)
3. right Form(C)
4. ∀vs:Atom List. (↑(FormSafe2(left) vs) ⇐⇒ FormSafe1''(left) vs)
5. ∀vs:Atom List. (↑(FormSafe2(right) vs) ⇐⇒ FormSafe1''(right) vs)
6. vs Atom List
7. ¬(vs [] ∈ (Atom List))
8. Atom
9. hd(vs) x ∈ Atom
10. ∀x:Atom. ((x ∈ vs)  (vs-[x] [] ∈ (Atom List) ⇐⇒ set-equal(Atom;vs;[x])))
11. x1 Atom
12. set-equal(Atom;vs;[x1])
13. ((↑FormVar?(left)) ∧ (FormVar-name(left) x1 ∈ Atom) ∧ (x1 ∈ FormFvs(right))))
∨ ((↑FormVar?(right)) ∧ (FormVar-name(right) x1 ∈ Atom) ∧ (x1 ∈ FormFvs(left))))
14. vs-[x1] [] ∈ (Atom List) ⇐⇒ set-equal(Atom;vs;[x1])
⊢ ↑(null(vs-[x])
b ((FormVar?(left) ∧b FormVar-name(left) =a x ∧b bx ∈b FormFvs(right)))
   ∨b(FormVar?(right) ∧b FormVar-name(right) =a x ∧b bx ∈b FormFvs(left)))))


Latex:


Latex:

1.  C  :  Type
2.  left  :  Form(C)
3.  right  :  Form(C)
4.  \mforall{}vs:Atom  List.  (\muparrow{}(FormSafe2(left)  vs)  \mLeftarrow{}{}\mRightarrow{}  FormSafe1''(left)  vs)
5.  \mforall{}vs:Atom  List.  (\muparrow{}(FormSafe2(right)  vs)  \mLeftarrow{}{}\mRightarrow{}  FormSafe1''(right)  vs)
6.  vs  :  Atom  List
7.  \mneg{}(vs  =  [])
8.  x  :  Atom
9.  hd(vs)  =  x
10.  \mforall{}x:Atom.  ((x  \mmember{}  vs)  {}\mRightarrow{}  (vs-[x]  =  []  \mLeftarrow{}{}\mRightarrow{}  set-equal(Atom;vs;[x])))
11.  x1  :  Atom
12.  set-equal(Atom;vs;[x1])
13.  ((\muparrow{}FormVar?(left))  \mwedge{}  (FormVar-name(left)  =  x1)  \mwedge{}  (\mneg{}(x1  \mmember{}  FormFvs(right))))
\mvee{}  ((\muparrow{}FormVar?(right))  \mwedge{}  (FormVar-name(right)  =  x1)  \mwedge{}  (\mneg{}(x1  \mmember{}  FormFvs(left))))
\mvdash{}  \muparrow{}(null(vs-[x])
\mwedge{}\msubb{}  ((FormVar?(left)  \mwedge{}\msubb{}  FormVar-name(left)  =a  x  \mwedge{}\msubb{}  (\mneg{}\msubb{}x  \mmember{}\msubb{}  FormFvs(right)))
      \mvee{}\msubb{}(FormVar?(right)  \mwedge{}\msubb{}  FormVar-name(right)  =a  x  \mwedge{}\msubb{}  (\mneg{}\msubb{}x  \mmember{}\msubb{}  FormFvs(left)))))


By


Latex:
(InstHyp  [\mkleeneopen{}x1\mkleeneclose{}]  (-4)\mcdot{}  THENA  Auto)




Home Index