Step
*
1
3
4
of Lemma
permutation-s-group_wf
.....subterm..... T:t
6:n
1. rv : SeparationSpace
2. <λx.x, λx.x> ∈ Point(permutation-ss(rv))
3. λfg.let f,g = fg 
       in <g, f> ∈ Point(permutation-ss(rv)) ⟶ Point(permutation-ss(rv))
4. λfg,fg'. let f,g = fg in let f',g' = fg' in <f o f', g' o g> ∈ Point(permutation-ss(rv))
   ⟶ Point(permutation-ss(rv))
   ⟶ Point(permutation-ss(rv))
5. sepw : x:Point(rv) ⟶ y:{y:Point(rv)| x # y}  ⟶ x # y
⊢ λx,y,d. case d of inl(asep) => inr asep  | inr(asep) => inl asep ∈ ∀x,y:Point(permutation-ss(rv)).
                                                                 ((λfg.let f,g = fg in <g, f>) x # (λfg.let f,g = fg 
                                                                                                        in <g, f>) 
                                                                                                   y
                                                                 
⇒ x # y)
BY
{ (Reduce 0
   THEN RepeatFor 2 (((MemCD THENA Auto)
                      THEN (RWO  "permutation-ss-point" (-1) THENA Auto)
                      THEN D -1
                      THEN D -2
                      THEN All Reduce))
   THEN (RWO "permutation-ss-sep" 0 THENA Auto)
   THEN RepUR ``fun-sep`` 0
   THEN (MemCD THENA Auto)
   THEN RepeatFor 2 (D -1)
   THEN Reduce 0
   THEN Auto) }
Latex:
Latex:
.....subterm.....  T:t
6:n
1.  rv  :  SeparationSpace
2.  <\mlambda{}x.x,  \mlambda{}x.x>  \mmember{}  Point(permutation-ss(rv))
3.  \mlambda{}fg.let  f,g  =  fg 
              in  <g,  f>  \mmember{}  Point(permutation-ss(rv))  {}\mrightarrow{}  Point(permutation-ss(rv))
4.  \mlambda{}fg,fg'.  let  f,g  =  fg  in  let  f',g'  =  fg'  in  <f  o  f',  g'  o  g>  \mmember{}  Point(permutation-ss(rv))
      {}\mrightarrow{}  Point(permutation-ss(rv))
      {}\mrightarrow{}  Point(permutation-ss(rv))
5.  sepw  :  x:Point(rv)  {}\mrightarrow{}  y:\{y:Point(rv)|  x  \#  y\}    {}\mrightarrow{}  x  \#  y
\mvdash{}  \mlambda{}x,y,d.  case  d  of  inl(asep)  =>  inr  asep    |  inr(asep)  =>  inl  asep  \mmember{}  \mforall{}x,y:Point(permutation-ss(rv)).
                                                                                                                                  ((\mlambda{}fg.let  f,g  =  fg 
                                                                                                                                              in  <g,  f>) 
                                                                                                                                    x  \#  (\mlambda{}fg.let  f,g  =  fg  in  <g,  f>)  y
                                                                                                                                  {}\mRightarrow{}  x  \#  y)
By
Latex:
(Reduce  0
  THEN  RepeatFor  2  (((MemCD  THENA  Auto)
                                        THEN  (RWO    "permutation-ss-point"  (-1)  THENA  Auto)
                                        THEN  D  -1
                                        THEN  D  -2
                                        THEN  All  Reduce))
  THEN  (RWO  "permutation-ss-sep"  0  THENA  Auto)
  THEN  RepUR  ``fun-sep``  0
  THEN  (MemCD  THENA  Auto)
  THEN  RepeatFor  2  (D  -1)
  THEN  Reduce  0
  THEN  Auto)
Home
Index