Step * 1 of Lemma fpf-join-assoc

.....subterm..... T:t
1:n
1. Type
2. A ⟶ Type
3. eq EqDecider(A)
4. List
5. f1 a:{a:A| (a ∈ d)}  ⟶ B[a]
6. d1 List
7. g1 a:{a:A| (a ∈ d1)}  ⟶ B[a]
8. d2 List
9. h1 a:{a:A| (a ∈ d2)}  ⟶ B[a]
⊢ (d filter(λa.(¬ba ∈b d);d1 filter(λa.(¬ba ∈b d1);d2)))
((d filter(λa.(¬ba ∈b d);d1)) filter(λa.(¬ba ∈b filter(λa.(¬ba ∈b d);d1));d2))
∈ (A List)
BY
((RWO "append_assoc" THENA Auto)
   THEN Reduce 0
   THEN EqCDA
   THEN (RWO "filter_append" THENA Auto)
   THEN EqCDA
   THEN (RWO "filter_filter" THENA Auto)
   THEN Reduce 0
   THEN EqCDA) }

1
.....subterm..... T:t
1:n
1. Type
2. A ⟶ Type
3. eq EqDecider(A)
4. List
5. f1 a:{a:A| (a ∈ d)}  ⟶ B[a]
6. d1 List
7. g1 a:{a:A| (a ∈ d1)}  ⟶ B[a]
8. d2 List
9. h1 a:{a:A| (a ∈ d2)}  ⟶ B[a]
⊢ t.((¬bt ∈b d) ∧b bt ∈b d1))) a.(¬ba ∈b filter(λa.(¬ba ∈b d);d1))) ∈ ({x:A| (x ∈ d2)}  ⟶ 𝔹)


Latex:


Latex:
.....subterm.....  T:t
1:n
1.  A  :  Type
2.  B  :  A  {}\mrightarrow{}  Type
3.  eq  :  EqDecider(A)
4.  d  :  A  List
5.  f1  :  a:\{a:A|  (a  \mmember{}  d)\}    {}\mrightarrow{}  B[a]
6.  d1  :  A  List
7.  g1  :  a:\{a:A|  (a  \mmember{}  d1)\}    {}\mrightarrow{}  B[a]
8.  d2  :  A  List
9.  h1  :  a:\{a:A|  (a  \mmember{}  d2)\}    {}\mrightarrow{}  B[a]
\mvdash{}  (d  @  filter(\mlambda{}a.(\mneg{}\msubb{}a  \mmember{}\msubb{}  d);d1  @  filter(\mlambda{}a.(\mneg{}\msubb{}a  \mmember{}\msubb{}  d1);d2)))
=  ((d  @  filter(\mlambda{}a.(\mneg{}\msubb{}a  \mmember{}\msubb{}  d);d1))  @  filter(\mlambda{}a.(\mneg{}\msubb{}a  \mmember{}\msubb{}  d  @  filter(\mlambda{}a.(\mneg{}\msubb{}a  \mmember{}\msubb{}  d);d1));d2))


By


Latex:
((RWO  "append\_assoc"  0  THENA  Auto)
  THEN  Reduce  0
  THEN  EqCDA
  THEN  (RWO  "filter\_append"  0  THENA  Auto)
  THEN  EqCDA
  THEN  (RWO  "filter\_filter"  0  THENA  Auto)
  THEN  Reduce  0
  THEN  EqCDA)




Home Index