Nuprl Lemma : transEquiv-trans-sq

∀[G,A,p,I,a,J,f,u:Top].
  (transEquivFun(p) I a J f u ~ let x,cA = p I+new-name(I) 1(s(1(a))) I+new-name(I) 1 <new-name(I)> 
                                in cA J new-name(J) 
                                   1 ⋅ cube+(I;new-name(I)) J+new-name(J) <1 ⋅ f ⋅ s, 1 ∧ <new-name(J)>> ⋅ 1 
                                   (0)<1 ⋅ f> ∨ 0 
                                   (λI@1,a@0. (if ((0)<1 ⋅ f ⋅ s ⋅ a@0>==1) then (fst(⋅)) I@1 1 else λu.u fi  
                                               ((snd((A I@1+new-name(I@1) 
                                                      cube+(I;new-name(I)) I@1+new-name(I@1) 
                                                      <1 ⋅ f ⋅ s ⋅ a@0 ⋅ s
                                                      , 1 ∧ ¬(dM-lift(I@1+new-name(I@1);I@1;s) 
                                                              ¬(dM-lift(I@1;J+new-name(J);a@0) 
                                                                <new-name(J)>) ∧ <new-name(I@1)>)
                                                      >(1(1(1(s(1(a))))))))) 
                                                I@1 
                                                new-name(I@1) 
                                                1 
                                                0 ∨ dM-to-FL(I@1;¬(¬(dM-lift(I@1;J+new-name(J);a@0) <new-name(J)>))) 
                                                (λI@0,a@1. ((((u 1 s) 1 a@0) 1 s) 1 a@1)) 
                                                ((u 1 s) 1 a@0)))) 
                                   ((snd((A J+new-name(J) 
                                          cube+(I;new-name(I)) J+new-name(J) <1 ⋅ f ⋅ s, 1 ∧ ¬(1 ∧ <new-name(J)>)>(1(1(1\000C(s(1(a))))))))) 
                                    J 
                                    new-name(J) 
                                    1 
                                    0 
                                    (λI@1,a@0. ((u 1 s) 1 a@0)) 
                                    u))


Proof




Definitions occuring in Statement :  transEquiv-trans: transEquivFun(p),  csm-m: m,  cube+: cube+(I;i),  interval-1: 1(𝕀),  interval-type: 𝕀,  csm-id-adjoin: [u],  cubical-type-ap-morph: (u a f),  cubical-type-at: A(a),  fl-morph: <f>,  dM-to-FL: dM-to-FL(I;z),  fl-eq: (x==y),  face_lattice: face_lattice(I),  cube-set-restriction: f(s),  nc-s: s,  new-name: new-name(I),  add-name: I+i,  nh-comp: g ⋅ f,  nh-id: 1,  dM-lift: dM-lift(I;J;f),  names-hom: I ⟶ J,  dM1: 1,  dM_inc: <x>,  dM: dM(I),  names-deq: NamesDeq,  names: names(I),  ifthenelse: if b then t else f fi ,  it: ⋅,  uall: ∀[x:A]. B[x],  top: Top,  pi1: fst(t),  pi2: snd(t),  apply: f a,  lambda: λx.A[x],  spread: spread def,  pair: <a, b>,  product: x:A × B[x],  sqequal: s ~ t,  dma-neg: ¬(x),  dm-neg: ¬(x),  lattice-0: 0,  lattice-1: 1,  lattice-join: a ∨ b,  lattice-meet: a ∧ b
Definitions unfolded in proof :  uall: ∀[x:A]. B[x],  transEquiv-trans: transEquivFun(p),  transEquiv: transEquiv{i:l}(G;A;p),  equiv-fun: equiv-fun(f),  cubical-subst: cubical-subst(G;f;pth;x),  cubical-fst: p.1,  cubical-app: app(w; u),  cubical-id-equiv: IdEquiv(X;T),  equiv-witness: equiv-witness(f;cntr),  cubical-pair: cubical-pair(u;v),  path-trans: PathTransport(p),  univ-trans: univ-trans(G;T),  transprt-fun: transprt-fun(Gamma;A;cA),  cubical-lambda: (λb),  universe-decode: decode(t),  cube-context-adjoin: X.A,  map-path: map-path(G;f;pth),  path-eta: path-eta(pth),  universe-comp-op: compOp(t),  all: ∀x:A. B[x],  member: t ∈ T,  cc-snd: q,  cc-fst: p,  csm-ap-term: (t)s,  cubicalpath-app: pth @ r,  cubical-lam: cubical-lam(X;b),  term-to-path: <>(a),  csm-ap-type: (AF)s,  csm-comp-structure: (cA)tau,  transprt: transprt(G;cA;a0),  comp-op-to-comp-fun: cop-to-cfun(cA),  csm-id-adjoin: [u],  cubical-id-fun: cubical-id-fun(X),  cc-adjoin-cube: (v;u),  csm-ap: (s)x,  csm+: tau+,  csm-comp: G o F,  pi1: fst(t),  pi2: snd(t),  csm-id: 1(X),  csm-adjoin: (s;u),  compose: f o g,  cubical-term-at: u(a),  face-0: 0(𝔽),  equivTerm: equivTerm(G;A;B),  csm-composition: (comp)sigma,  composition-term: comp cA [phi ⊢→ u] a0,  comp_term: comp cA [phi ⊢→ u] a0,  equiv-comp: equiv-comp(H;A;E;cA;cE),  universe-encode: encode(T;cT),  discrete-cubical-term: discr(t),  context-map: <rho>,  comp-fun-to-comp-op: cfun-to-cop(Gamma;A;comp),  comp-fun-to-comp-op1: comp-fun-to-comp-op1(Gamma;A;comp),  canonical-section: canonical-section(Gamma;A;I;rho;a),  so_lambda: λ2x y.t[x; y],  so_apply: x[s1;s2],  equiv_comp_apply: equiv_comp_apply(H;A;E;cA;cE;I;a;b;c;d),  cubical-type-ap-morph: (u a f),  cubical-universe: c𝕌,  closed-type-to-type: closed-type-to-type(T),  closed-cubical-universe: cc𝕌,  csm-fibrant-type: csm-fibrant-type(G;H;s;FT),  so_lambda: so_lambda4,  so_apply: x[s1;s2;s3;s4],  uimplies: b supposing a,  label: ...$L... t,  cube-set-restriction: f(s),  csm-m: m,  formal-cube: formal-cube(I),  cubical-equiv: Equiv(T;A),  cubical-fun: (A ⟶ B),  cubical-sigma: Σ A B,  subset-iota: iota,  interval-1: 1(𝕀),  dma-neg: ¬(x),  record-select: r.x,  dM: dM(I),  free-DeMorgan-algebra: free-DeMorgan-algebra(T;eq),  mk-DeMorgan-algebra: mk-DeMorgan-algebra(L;n),  record-update: r[x := v],  ifthenelse: if b then t else f fi ,  eq_atom: x =a y,  btrue: tt,  dm-neg: ¬(x),  lattice-extend: lattice-extend(L;eq;eqL;f;ac),  lattice-fset-join: \/(s),  reduce: reduce(f;k;as),  list_ind: list_ind,  fset-image: f"(s),  f-union: f-union(domeq;rngeq;s;x.g[x]),  list_accum: list_accum,  dM0: 0,  lattice-0: 0,  bfalse: ff,  free-DeMorgan-lattice: free-DeMorgan-lattice(T;eq),  free-dist-lattice: free-dist-lattice(T; eq),  mk-bounded-distributive-lattice: mk-bounded-distributive-lattice,  mk-bounded-lattice: mk-bounded-lattice(T;m;j;z;o),  empty-fset: {},  nil: [],  it: ⋅,  opposite-lattice: opposite-lattice(L),  lattice-1: 1,  fset-singleton: {x},  cons: [a / b],  dM1: 1,  fset-union: x ⋃ y,  l-union: as ⋃ bs,  insert: insert(a;L),  eval_list: eval_list(t),  deq-member: x ∈b L,  lattice-join: a ∨ b,  lattice-meet: a ∧ b,  fset-ac-glb: fset-ac-glb(eq;ac1;ac2),  fset-minimals: fset-minimals(x,y.less[x; y]; s),  fset-filter: {x ∈ s | P[x]},  filter: filter(P;l),  lattice-fset-meet: /\(s),  dM-to-FL: dM-to-FL(I;z),  face_lattice: face_lattice(I),  face-lattice: face-lattice(T;eq),  free-dist-lattice-with-constraints: free-dist-lattice-with-constraints(T;eq;x.Cs[x]),  constrained-antichain-lattice: constrained-antichain-lattice(T;eq;P),  fset-constrained-ac-lub: lub(P;ac1;ac2),  fset-ac-lub: fset-ac-lub(eq;ac1;ac2)
Lemmas referenced :  I_cube_pair_redex_lemma,  cube_set_restriction_pair_lemma,  cubical_type_at_pair_lemma,  cubical_type_ap_morph_pair_lemma,  arrow_pair_lemma,  equiv_comp-apply-sq,  istype-top,  lifting-strict-spread,  strict4-spread,  strict4-apply,  interval-type-ap-morph,  lifting-strict-ifthenelse,  face-type-ap-morph,  dM-lift-1-sq
Rules used in proof :  sqequalSubstitution,  sqequalTransitivity,  computationStep,  sqequalReflexivity,  isect_memberFormation_alt,  sqequalRule,  cut,  introduction,  extract_by_obid,  sqequalHypSubstitution,  dependent_functionElimination,  thin,  Error :memTop,  hypothesis,  isectElimination,  hypothesisEquality,  because_Cache,  inhabitedIsType,  baseClosed,  independent_isectElimination,  lambdaFormation_alt

Latex:
\mforall{}[G,A,p,I,a,J,f,u:Top].
    (transEquivFun(p)  I  a  J  f  u 
    \msim{}  let  x,cA  =  p  I+new-name(I)  1(s(1(a)))  I+new-name(I)  1  <new-name(I)> 
        in  cA  J  new-name(J)  1  \mcdot{}  cube+(I;new-name(I))  J+new-name(J)  ə  \mcdot{}  f  \mcdot{}  s,  1  \mwedge{}  <new-name(J)>>  \mcdot{}  1  (0\000C)ə  \mcdot{}  f>  \mvee{}  0 
              (\mlambda{}I@1,a@0.  (if  ((0)ə  \mcdot{}  f  \mcdot{}  s  \mcdot{}  a@0>==1)  then  (fst(\mcdot{}))  I@1  1  else  \mlambda{}u.u  fi   
                                      ((snd((A  I@1+new-name(I@1) 
                                                    cube+(I;new-name(I))  I@1+new-name(I@1) 
                                                    ə  \mcdot{}  f  \mcdot{}  s  \mcdot{}  a@0  \mcdot{}  s
                                                    ,  1  \mwedge{}  \mneg{}(dM-lift(I@1+new-name(I@1);I@1;s) 
                                                                    \mneg{}(dM-lift(I@1;J+new-name(J);a@0)  <new-name(J)>)  \mwedge{}  <new-name(I@1)>)
                                                    >(1(1(1(s(1(a))))))))) 
                                        I@1 
                                        new-name(I@1) 
                                        1 
                                        0  \mvee{}  dM-to-FL(I@1;\mneg{}(\mneg{}(dM-lift(I@1;J+new-name(J);a@0)  <new-name(J)>))) 
                                        (\mlambda{}I@0,a@1.  ((((u  1  s)  1  a@0)  1  s)  1  a@1)) 
                                        ((u  1  s)  1  a@0)))) 
              ((snd((A  J+new-name(J) 
                            cube+(I;new-name(I))  J+new-name(J)  ə  \mcdot{}  f  \mcdot{}  s,  1  \mwedge{}  \mneg{}(1  \mwedge{}  <new-name(J)>)>(1(1(1(s(1(a))\000C))))))) 
                J 
                new-name(J) 
                1 
                0 
                (\mlambda{}I@1,a@0.  ((u  1  s)  1  a@0)) 
                u))



Date html generated: 2020_05_20-PM-07_35_36
Last ObjectModification: 2020_04_25-PM-10_42_10

Theory : cubical!type!theory


Home Index