Step
*
1
of Lemma
wfd-tree-induction
1. [A] : Type
2. [P] : wfd-tree(A) ⟶ ℙ
3. P[w-nil()]
4. ∀f:A ⟶ wfd-tree(A). ((∀a:A. P[f a]) 
⇒ P[mk-wfd-tree(f)])
5. w : wfd-tree(A)
⊢ P[w]
BY
{ ((InstLemma `bool-bar-induction` [⌜A⌝;⌜λ2s.P[w@s]⌝;⌜λ2s.co-w-null(w@s)⌝]⋅ THENA Auto)
   THEN Try ((BLemma `co-w-select-wfd` THEN Complete (Auto))⋅)
   )⋅ }
1
1. [A] : Type
2. [P] : wfd-tree(A) ⟶ ℙ
3. P[w-nil()]
4. ∀f:A ⟶ wfd-tree(A). ((∀a:A. P[f a]) 
⇒ P[mk-wfd-tree(f)])
5. w : wfd-tree(A)
6. s : {s:A List| ↑co-w-null(w@s)} 
⊢ P[w@s]
2
1. [A] : Type
2. [P] : wfd-tree(A) ⟶ ℙ
3. P[w-nil()]
4. ∀f:A ⟶ wfd-tree(A). ((∀a:A. P[f a]) 
⇒ P[mk-wfd-tree(f)])
5. w : wfd-tree(A)
6. s : {s:A List| ¬↑co-w-null(w@s)} 
7. ∀t:A. P[w@s @ [t]]
⊢ P[w@s]
3
1. A : Type
2. P : wfd-tree(A) ⟶ ℙ
3. P[w-nil()]
4. ∀f:A ⟶ wfd-tree(A). ((∀a:A. P[f a]) 
⇒ P[mk-wfd-tree(f)])
5. w : wfd-tree(A)
6. alpha : ℕ ⟶ A
⊢ ↓∃n:ℕ. (↑co-w-null(w@map(alpha;upto(n))))
4
1. [A] : Type
2. [P] : wfd-tree(A) ⟶ ℙ
3. P[w-nil()]
4. ∀f:A ⟶ wfd-tree(A). ((∀a:A. P[f a]) 
⇒ P[mk-wfd-tree(f)])
5. w : wfd-tree(A)
6. P[w@[]]
⊢ P[w]
Latex:
Latex:
1.  [A]  :  Type
2.  [P]  :  wfd-tree(A)  {}\mrightarrow{}  \mBbbP{}
3.  P[w-nil()]
4.  \mforall{}f:A  {}\mrightarrow{}  wfd-tree(A).  ((\mforall{}a:A.  P[f  a])  {}\mRightarrow{}  P[mk-wfd-tree(f)])
5.  w  :  wfd-tree(A)
\mvdash{}  P[w]
By
Latex:
((InstLemma  `bool-bar-induction`  [\mkleeneopen{}A\mkleeneclose{};\mkleeneopen{}\mlambda{}\msubtwo{}s.P[w@s]\mkleeneclose{};\mkleeneopen{}\mlambda{}\msubtwo{}s.co-w-null(w@s)\mkleeneclose{}]\mcdot{}  THENA  Auto)
  THEN  Try  ((BLemma  `co-w-select-wfd`  THEN  Complete  (Auto))\mcdot{})
  )\mcdot{}
Home
Index