Step
*
1
3
of Lemma
permutation-s-group_wf
1. [rv] : SeparationSpace
2. <λx.x, λx.x> ∈ Point
3. λfg.let f,g = fg 
       in <g, f> ∈ Point ⟶ Point
4. λfg,fg'. let f,g = fg in let f',g' = fg' in <f o f', g' o g> ∈ Point ⟶ Point ⟶ Point
⊢ ∀[sepw:∀x:Point. ∀y:{y:Point| x # y} .  x # y]. (Perm(rv) ∈ s-Group)
BY
{ ((D 0 THENA Auto)
   THEN Unfold `all` -1
   THEN Unfold `permutation-s-group` 0
   THEN MemCD
   THEN Try (Trivial)
   THEN Try ((MemCD THEN Trivial))) }
1
.....subterm..... T:t
4:n
1. rv : SeparationSpace
2. <λx.x, λx.x> ∈ Point
3. λfg.let f,g = fg 
       in <g, f> ∈ Point ⟶ Point
4. λfg,fg'. let f,g = fg in let f',g' = fg' in <f o f', g' o g> ∈ Point ⟶ Point ⟶ Point
5. sepw : x:Point ⟶ y:{y:Point| x # y}  ⟶ x # y
⊢ λfg,fg'. let f,g = fg in let f',g' = fg' in <f o f', g' o g> ∈ {f:Point ⟶ Point ⟶ Point| 
                                                           (∀x,y,z:Point.  f x (f y z) ≡ f (f x y) z)
                                                           ∧ (∀x:Point. f x <λx.x, λx.x> ≡ x)
                                                           ∧ (∀x:Point
                                                                f x ((λfg.let f,g = fg in <g, f>) x) ≡ <λx.x, λx.x>)} 
2
.....subterm..... T:t
5:n
1. rv : SeparationSpace
2. <λx.x, λx.x> ∈ Point
3. λfg.let f,g = fg 
       in <g, f> ∈ Point ⟶ Point
4. λfg,fg'. let f,g = fg in let f',g' = fg' in <f o f', g' o g> ∈ Point ⟶ Point ⟶ Point
5. sepw : x:Point ⟶ y:{y:Point| x # y}  ⟶ x # y
⊢ λx,y,z,w,d. case d
              of inl(asep) =>
              let a,sep = asep 
              in inl inl <(fst(z)) a, sep>
              | inr(asep) =>
              let a,sep = asep 
              in inl (inr <a, sepw ((snd(x)) a) ((snd(y)) a)> ) ∈ ∀x,x',y,y':Point.
                                                 ((λfg,fg'. let f,g = fg in let f',g' = fg' in <f o f', g' o g>) x 
                                                  y # (λfg,fg'. let f,g = fg in let f',g' = fg' in <f o f', g' o g>) x' \000Cy
                                                 
⇒ (x # x' ∨ y # y'))
3
.....subterm..... T:t
6:n
1. rv : SeparationSpace
2. <λx.x, λx.x> ∈ Point
3. λfg.let f,g = fg 
       in <g, f> ∈ Point ⟶ Point
4. λfg,fg'. let f,g = fg in let f',g' = fg' in <f o f', g' o g> ∈ Point ⟶ Point ⟶ Point
5. sepw : x:Point ⟶ y:{y:Point| x # y}  ⟶ x # y
⊢ λx,y,d. case d of inl(asep) => inr asep  | inr(asep) => inl asep ∈ ∀x,y:Point.
                                                                 ((λfg.let f,g = fg in <g, f>) x # (λfg.let f,g = fg 
                                                                                                        in <g, f>) 
                                                                                                   y
                                                                 
⇒ x # y)
Latex:
Latex:
1.  [rv]  :  SeparationSpace
2.  <\mlambda{}x.x,  \mlambda{}x.x>  \mmember{}  Point
3.  \mlambda{}fg.let  f,g  =  fg 
              in  <g,  f>  \mmember{}  Point  {}\mrightarrow{}  Point
4.  \mlambda{}fg,fg'.  let  f,g  =  fg  in  let  f',g'  =  fg'  in  <f  o  f',  g'  o  g>  \mmember{}  Point  {}\mrightarrow{}  Point  {}\mrightarrow{}  Point
\mvdash{}  \mforall{}[sepw:\mforall{}x:Point.  \mforall{}y:\{y:Point|  x  \#  y\}  .    x  \#  y].  (Perm(rv)  \mmember{}  s-Group)
By
Latex:
((D  0  THENA  Auto)
  THEN  Unfold  `all`  -1
  THEN  Unfold  `permutation-s-group`  0
  THEN  MemCD
  THEN  Try  (Trivial)
  THEN  Try  ((MemCD  THEN  Trivial)))
Home
Index