Step * 1 2 1 1 of Lemma combine-list-permutation


1. Type
2. A ⟶ A ⟶ A
3. Assoc(A;λx,y. f[x;y])
4. Comm(A;λx,y. f[x;y])
5. as List
6. bs List
7. 0 < ||as||
8. permutation(A;as;bs)
9. as@0 List
10. A
11. permutation(A;as;as@0 [a])
⊢ permutation(A;as@0 [a];[a as@0])
BY
Subst ⌜[a as@0] [a] as@0⌝ 0⋅ }

1
.....equality..... 
1. Type
2. A ⟶ A ⟶ A
3. Assoc(A;λx,y. f[x;y])
4. Comm(A;λx,y. f[x;y])
5. as List
6. bs List
7. 0 < ||as||
8. permutation(A;as;bs)
9. as@0 List
10. A
11. permutation(A;as;as@0 [a])
⊢ [a as@0] [a] as@0

2
1. Type
2. A ⟶ A ⟶ A
3. Assoc(A;λx,y. f[x;y])
4. Comm(A;λx,y. f[x;y])
5. as List
6. bs List
7. 0 < ||as||
8. permutation(A;as;bs)
9. as@0 List
10. A
11. permutation(A;as;as@0 [a])
⊢ permutation(A;as@0 [a];[a] as@0)


Latex:


Latex:

1.  A  :  Type
2.  f  :  A  {}\mrightarrow{}  A  {}\mrightarrow{}  A
3.  Assoc(A;\mlambda{}x,y.  f[x;y])
4.  Comm(A;\mlambda{}x,y.  f[x;y])
5.  as  :  A  List
6.  bs  :  A  List
7.  0  <  ||as||
8.  permutation(A;as;bs)
9.  as@0  :  A  List
10.  a  :  A
11.  permutation(A;as;as@0  @  [a])
\mvdash{}  permutation(A;as@0  @  [a];[a  /  as@0])


By


Latex:
Subst  \mkleeneopen{}[a  /  as@0]  \msim{}  [a]  @  as@0\mkleeneclose{}  0\mcdot{}




Home Index