Step
*
1
of Lemma
permutation-cons
1. [A] : Type
2. x : A
3. L1 : A List
4. L2 : A List
5. permutation(A;[x / L1];L2)
⊢ ∃as,bs:A List. ((L2 = (as @ [x / bs]) ∈ (A List)) ∧ permutation(A;L1;as @ bs))
BY
{ Assert ⌜∃as,bs:A List. (L2 = (as @ [x / bs]) ∈ (A List))⌝⋅ }
1
.....assertion..... 
1. [A] : Type
2. x : A
3. L1 : A List
4. L2 : A List
5. permutation(A;[x / L1];L2)
⊢ ∃as,bs:A List. (L2 = (as @ [x / bs]) ∈ (A List))
2
1. [A] : Type
2. x : A
3. L1 : A List
4. L2 : A List
5. permutation(A;[x / L1];L2)
6. ∃as,bs:A List. (L2 = (as @ [x / bs]) ∈ (A List))
⊢ ∃as,bs:A List. ((L2 = (as @ [x / bs]) ∈ (A List)) ∧ permutation(A;L1;as @ bs))
Latex:
Latex:
1.  [A]  :  Type
2.  x  :  A
3.  L1  :  A  List
4.  L2  :  A  List
5.  permutation(A;[x  /  L1];L2)
\mvdash{}  \mexists{}as,bs:A  List.  ((L2  =  (as  @  [x  /  bs]))  \mwedge{}  permutation(A;L1;as  @  bs))
By
Latex:
Assert  \mkleeneopen{}\mexists{}as,bs:A  List.  (L2  =  (as  @  [x  /  bs]))\mkleeneclose{}\mcdot{}
Home
Index