Step
*
1
1
of Lemma
l_intersection-size
1. T : Type
2. eq : EqDecider(T)
3. a : T List
4. b : T List
5. c : T List
6. no_repeats(T;a)
7. no_repeats(T;b)
8. a ⊆ c
9. b ⊆ c
10. no_repeats(T;(a ⋂ b))
11. f : ℕ||a|| ⟶ ℕ||c||
12. ∀i:ℕ||a||. (a[i] = c[f i] ∈ T)
13. g : ℕ||b|| ⟶ ℕ||c||
14. ∀i:ℕ||b||. (b[i] = c[g i] ∈ T)
15. Inj({x:T| (x ∈ (a ⋂ b))} ℕ||(a ⋂ b)||;λx.index((a ⋂ b);x))
16. ∀j:ℕ||b||. ((b[j] ∈ a) 
⇒ ((b[j] ∈ (a ⋂ b)) ∧ (index((a ⋂ b);b[j]) ∈ ℕ||(a ⋂ b)||)))
⊢ (||a|| + ||b||) ≤ (||c|| + ||(a ⋂ b)||)
BY
{ (Using [`f',⌜λi.if i <z ||a|| then f i
                  if b[i - ||a||] ∈b a then ||c|| + index((a ⋂ b);b[i - ||a||])
                  else g (i - ||a||)
                  fi ⌝] (BLemma `pigeon-hole`)⋅
   THEN Try (QuickAuto)
   ) }
1
.....wf..... 
1. T : Type
2. eq : EqDecider(T)
3. a : T List
4. b : T List
5. c : T List
6. no_repeats(T;a)
7. no_repeats(T;b)
8. a ⊆ c
9. b ⊆ c
10. no_repeats(T;(a ⋂ b))
11. f : ℕ||a|| ⟶ ℕ||c||
12. ∀i:ℕ||a||. (a[i] = c[f i] ∈ T)
13. g : ℕ||b|| ⟶ ℕ||c||
14. ∀i:ℕ||b||. (b[i] = c[g i] ∈ T)
15. Inj({x:T| (x ∈ (a ⋂ b))} ℕ||(a ⋂ b)||;λx.index((a ⋂ b);x))
16. ∀j:ℕ||b||. ((b[j] ∈ a) 
⇒ ((b[j] ∈ (a ⋂ b)) ∧ (index((a ⋂ b);b[j]) ∈ ℕ||(a ⋂ b)||)))
⊢ λi.if i <z ||a|| then f i
     if b[i - ||a||] ∈b a then ||c|| + index((a ⋂ b);b[i - ||a||])
     else g (i - ||a||)
     fi  ∈ ℕ||a|| + ||b|| ⟶ ℕ||c|| + ||(a ⋂ b)||
2
1. T : Type
2. eq : EqDecider(T)
3. a : T List
4. b : T List
5. c : T List
6. no_repeats(T;a)
7. no_repeats(T;b)
8. a ⊆ c
9. b ⊆ c
10. no_repeats(T;(a ⋂ b))
11. f : ℕ||a|| ⟶ ℕ||c||
12. ∀i:ℕ||a||. (a[i] = c[f i] ∈ T)
13. g : ℕ||b|| ⟶ ℕ||c||
14. ∀i:ℕ||b||. (b[i] = c[g i] ∈ T)
15. Inj({x:T| (x ∈ (a ⋂ b))} ℕ||(a ⋂ b)||;λx.index((a ⋂ b);x))
16. ∀j:ℕ||b||. ((b[j] ∈ a) 
⇒ ((b[j] ∈ (a ⋂ b)) ∧ (index((a ⋂ b);b[j]) ∈ ℕ||(a ⋂ b)||)))
⊢ Inj(ℕ||a|| + ||b||;ℕ||c|| + ||(a ⋂ b)||;λi.if i <z ||a|| then f i
                                             if b[i - ||a||] ∈b a then ||c|| + index((a ⋂ b);b[i - ||a||])
                                             else g (i - ||a||)
                                             fi )
Latex:
Latex:
1.  T  :  Type
2.  eq  :  EqDecider(T)
3.  a  :  T  List
4.  b  :  T  List
5.  c  :  T  List
6.  no\_repeats(T;a)
7.  no\_repeats(T;b)
8.  a  \msubseteq{}  c
9.  b  \msubseteq{}  c
10.  no\_repeats(T;(a  \mcap{}  b))
11.  f  :  \mBbbN{}||a||  {}\mrightarrow{}  \mBbbN{}||c||
12.  \mforall{}i:\mBbbN{}||a||.  (a[i]  =  c[f  i])
13.  g  :  \mBbbN{}||b||  {}\mrightarrow{}  \mBbbN{}||c||
14.  \mforall{}i:\mBbbN{}||b||.  (b[i]  =  c[g  i])
15.  Inj(\{x:T|  (x  \mmember{}  (a  \mcap{}  b))\}  ;\mBbbN{}||(a  \mcap{}  b)||;\mlambda{}x.index((a  \mcap{}  b);x))
16.  \mforall{}j:\mBbbN{}||b||.  ((b[j]  \mmember{}  a)  {}\mRightarrow{}  ((b[j]  \mmember{}  (a  \mcap{}  b))  \mwedge{}  (index((a  \mcap{}  b);b[j])  \mmember{}  \mBbbN{}||(a  \mcap{}  b)||)))
\mvdash{}  (||a||  +  ||b||)  \mleq{}  (||c||  +  ||(a  \mcap{}  b)||)
By
Latex:
(Using  [`f',\mkleeneopen{}\mlambda{}i.if  i  <z  ||a||  then  f  i
                                if  b[i  -  ||a||]  \mmember{}\msubb{}  a  then  ||c||  +  index((a  \mcap{}  b);b[i  -  ||a||])
                                else  g  (i  -  ||a||)
                                fi  \mkleeneclose{}]  (BLemma  `pigeon-hole`)\mcdot{}
  THEN  Try  (QuickAuto)
  )
Home
Index