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. 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. wfd-tree(A)
6. {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. wfd-tree(A)
6. {s:A List| ¬↑co-w-null(w@s)} 
7. ∀t:A. P[w@s [t]]
⊢ P[w@s]

3
1. Type
2. wfd-tree(A) ⟶ ℙ
3. P[w-nil()]
4. ∀f:A ⟶ wfd-tree(A). ((∀a:A. P[f a])  P[mk-wfd-tree(f)])
5. 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. 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