Step
*
2
of Lemma
FormSafe1_functionality
1. C : Type
⊢ ∀element,set:Form(C).
    ((∀vs,ws:Atom List.  (l_subset(Atom;ws;vs) 
⇒ (FormSafe1(element) vs) 
⇒ (FormSafe1(element) ws)))
    
⇒ (∀vs,ws:Atom List.  (l_subset(Atom;ws;vs) 
⇒ (FormSafe1(set) vs) 
⇒ (FormSafe1(set) ws)))
    
⇒ (∀vs,ws:Atom List.
          (l_subset(Atom;ws;vs)
          
⇒ ((↑null(vs))
             ∨ (∃x:Atom
                 (set-equal(Atom;vs;[x])
                 ∧ (↑FormVar?(element))
                 ∧ (FormVar-name(element) = x ∈ Atom)
                 ∧ (((↑FormVar?(set)) ∧ (FormVar-name(set) = x ∈ Atom)) ∨ (¬(x ∈ FormFvs(set)))))))
          
⇒ ((↑null(ws))
             ∨ (∃x:Atom
                 (set-equal(Atom;ws;[x])
                 ∧ (↑FormVar?(element))
                 ∧ (FormVar-name(element) = x ∈ Atom)
                 ∧ (((↑FormVar?(set)) ∧ (FormVar-name(set) = x ∈ Atom)) ∨ (¬(x ∈ FormFvs(set))))))))))
BY
{ (Auto THEN D -1) }
1
1. C : Type
2. element : Form(C)
3. set : Form(C)
4. ∀vs,ws:Atom List.  (l_subset(Atom;ws;vs) 
⇒ (FormSafe1(element) vs) 
⇒ (FormSafe1(element) ws))
5. ∀vs,ws:Atom List.  (l_subset(Atom;ws;vs) 
⇒ (FormSafe1(set) vs) 
⇒ (FormSafe1(set) ws))
6. vs : Atom List
7. ws : Atom List
8. l_subset(Atom;ws;vs)
9. ↑null(vs)
⊢ (↑null(ws))
∨ (∃x:Atom
    (set-equal(Atom;ws;[x])
    ∧ (↑FormVar?(element))
    ∧ (FormVar-name(element) = x ∈ Atom)
    ∧ (((↑FormVar?(set)) ∧ (FormVar-name(set) = x ∈ Atom)) ∨ (¬(x ∈ FormFvs(set))))))
2
1. C : Type
2. element : Form(C)
3. set : Form(C)
4. ∀vs,ws:Atom List.  (l_subset(Atom;ws;vs) 
⇒ (FormSafe1(element) vs) 
⇒ (FormSafe1(element) ws))
5. ∀vs,ws:Atom List.  (l_subset(Atom;ws;vs) 
⇒ (FormSafe1(set) vs) 
⇒ (FormSafe1(set) ws))
6. vs : Atom List
7. ws : Atom List
8. l_subset(Atom;ws;vs)
9. ∃x:Atom
    (set-equal(Atom;vs;[x])
    ∧ (↑FormVar?(element))
    ∧ (FormVar-name(element) = x ∈ Atom)
    ∧ (((↑FormVar?(set)) ∧ (FormVar-name(set) = x ∈ Atom)) ∨ (¬(x ∈ FormFvs(set)))))
⊢ (↑null(ws))
∨ (∃x:Atom
    (set-equal(Atom;ws;[x])
    ∧ (↑FormVar?(element))
    ∧ (FormVar-name(element) = x ∈ Atom)
    ∧ (((↑FormVar?(set)) ∧ (FormVar-name(set) = x ∈ Atom)) ∨ (¬(x ∈ FormFvs(set))))))
Latex:
Latex:
1.  C  :  Type
\mvdash{}  \mforall{}element,set:Form(C).
        ((\mforall{}vs,ws:Atom  List.
                (l\_subset(Atom;ws;vs)  {}\mRightarrow{}  (FormSafe1(element)  vs)  {}\mRightarrow{}  (FormSafe1(element)  ws)))
        {}\mRightarrow{}  (\mforall{}vs,ws:Atom  List.    (l\_subset(Atom;ws;vs)  {}\mRightarrow{}  (FormSafe1(set)  vs)  {}\mRightarrow{}  (FormSafe1(set)  ws)))
        {}\mRightarrow{}  (\mforall{}vs,ws:Atom  List.
                    (l\_subset(Atom;ws;vs)
                    {}\mRightarrow{}  ((\muparrow{}null(vs))
                          \mvee{}  (\mexists{}x:Atom
                                  (set-equal(Atom;vs;[x])
                                  \mwedge{}  (\muparrow{}FormVar?(element))
                                  \mwedge{}  (FormVar-name(element)  =  x)
                                  \mwedge{}  (((\muparrow{}FormVar?(set))  \mwedge{}  (FormVar-name(set)  =  x))  \mvee{}  (\mneg{}(x  \mmember{}  FormFvs(set)))))))
                    {}\mRightarrow{}  ((\muparrow{}null(ws))
                          \mvee{}  (\mexists{}x:Atom
                                  (set-equal(Atom;ws;[x])
                                  \mwedge{}  (\muparrow{}FormVar?(element))
                                  \mwedge{}  (FormVar-name(element)  =  x)
                                  \mwedge{}  (((\muparrow{}FormVar?(set))  \mwedge{}  (FormVar-name(set)  =  x))  \mvee{}  (\mneg{}(x  \mmember{}  FormFvs(set))))))))))
By
Latex:
(Auto  THEN  D  -1)
Home
Index