Step * 1 2 2 of Lemma FormSafe-iff-FormSafe1'


1. Type
2. left Form(C)
3. right Form(C)
4. vs Atom List
5. phi Atom List
6. l_subset(Atom;phi;vs-FormFvs(left))
7. FormSafe1(left) vs-phi
8. FormSafe1(right) phi
⊢ ∃as,bs:Atom List
   (set-equal(Atom;vs;as bs)
   ∧ (FormSafe1(left) as)
   ∧ (FormSafe1(right) bs)
   ∧ (l_disjoint(Atom;as;FormFvs(right)) ∨ l_disjoint(Atom;bs;FormFvs(left))))
BY
(InstConcl [⌜vs-phi⌝;⌜phi⌝]⋅ THEN Auto) }

1
1. Type
2. left Form(C)
3. right Form(C)
4. vs Atom List
5. phi Atom List
6. l_subset(Atom;phi;vs-FormFvs(left))
7. FormSafe1(left) vs-phi
8. FormSafe1(right) phi
⊢ set-equal(Atom;vs;vs-phi phi)

2
1. Type
2. left Form(C)
3. right Form(C)
4. vs Atom List
5. phi Atom List
6. l_subset(Atom;phi;vs-FormFvs(left))
7. FormSafe1(left) vs-phi
8. FormSafe1(right) phi
9. set-equal(Atom;vs;vs-phi phi)
10. FormSafe1(left) vs-phi
11. FormSafe1(right) phi
⊢ l_disjoint(Atom;vs-phi;FormFvs(right)) ∨ l_disjoint(Atom;phi;FormFvs(left))


Latex:


Latex:

1.  C  :  Type
2.  left  :  Form(C)
3.  right  :  Form(C)
4.  vs  :  Atom  List
5.  phi  :  Atom  List
6.  l\_subset(Atom;phi;vs-FormFvs(left))
7.  FormSafe1(left)  vs-phi
8.  FormSafe1(right)  phi
\mvdash{}  \mexists{}as,bs:Atom  List
      (set-equal(Atom;vs;as  @  bs)
      \mwedge{}  (FormSafe1(left)  as)
      \mwedge{}  (FormSafe1(right)  bs)
      \mwedge{}  (l\_disjoint(Atom;as;FormFvs(right))  \mvee{}  l\_disjoint(Atom;bs;FormFvs(left))))


By


Latex:
(InstConcl  [\mkleeneopen{}vs-phi\mkleeneclose{};\mkleeneopen{}phi\mkleeneclose{}]\mcdot{}  THEN  Auto)




Home Index