Nuprl Definition : glue-meaning

glue-meaning{i:l}(A; B; C; D) ==
  let Xa,a,ma = A in 
  let Xb,b,mb = B in 
  let Xc,c,mc = C in 
  let Xd,d,md = D in 
  provision((allowed(ma) ∧ allowed(mb))
            ∧ type(allow(ma))=𝔽
            ∧ (allowed(mc) ∧ allowed(md))
            ∧ let phi = term(allow(ma)) in
                  type(allow(md))=(type(allow(mc)) ⟶ type(allow(mb)))
                  ∧ (app(term(allow(md)); term(allow(mc)))
                    = term(allow(mb))
                    ∈ {context-set(Xa), phi ⊢ _:type(allow(mb))});
            let phi = term(allow(ma)) in
                mk-ctt-term-mng(levelsup(level(allow(mb));level(allow(mc)));
                                Glue [phi ⊢→ (type(allow(mc));term(allow(md)))] type(allow(mb));
                                glue [phi ⊢→ term(allow(mc))] term(allow(mb))))



Definitions occuring in Statement :  context-set: context-set(ctxt),  mk-ctt-term-mng: mk-ctt-term-mng(lvl; T; t),  ctt-term-term: term(t),  ctt-term-type-is: type(t)=T,  ctt-term-type: type(t),  ctt-term-level: level(t),  levelsup: levelsup(x;y),  glue-term: glue [phi ⊢→ t] a,  glue-type: Glue [phi ⊢→ (T;w)] A,  context-subset: Gamma, phi,  face-type: 𝔽,  cubical-app: app(w; u),  cubical-fun: (A ⟶ B),  cubical-term: {X ⊢ _:A},  let: let,  spreadn: spread3,  and: P ∧ Q,  equal: s = t ∈ T,  allow: allow(x),  allowed: allowed(x),  provision: provision(ok; v)
Definitions occuring in definition :  spreadn: spread3,  provision: Error :provision,  face-type: 𝔽,  allowed: Error :allowed,  and: P ∧ Q,  ctt-term-type-is: type(t)=T,  cubical-fun: (A ⟶ B),  equal: s = t ∈ T,  cubical-term: {X ⊢ _:A},  context-subset: Gamma, phi,  cubical-app: app(w; u),  let: let,  mk-ctt-term-mng: mk-ctt-term-mng(lvl; T; t),  levelsup: levelsup(x;y),  ctt-term-level: level(t),  glue-type: Glue [phi ⊢→ (T;w)] A,  glue-term: glue [phi ⊢→ t] a,  context-set: context-set(ctxt),  ctt-term-type: type(t),  ctt-term-term: term(t),  allow: Error :allow

Latex:
glue-meaning\{i:l\}(A;  B;  C;  D)  ==
    let  Xa,a,ma  =  A  in 
    let  Xb,b,mb  =  B  in 
    let  Xc,c,mc  =  C  in 
    let  Xd,d,md  =  D  in 
    provision((allowed(ma)  \mwedge{}  allowed(mb))
                        \mwedge{}  type(allow(ma))=\mBbbF{}
                        \mwedge{}  (allowed(mc)  \mwedge{}  allowed(md))
                        \mwedge{}  let  phi  =  term(allow(ma))  in
                                    type(allow(md))=(type(allow(mc))  {}\mrightarrow{}  type(allow(mb)))
                                    \mwedge{}  (app(term(allow(md));  term(allow(mc)))  =  term(allow(mb)));
                        let  phi  =  term(allow(ma))  in
                                mk-ctt-term-mng(levelsup(level(allow(mb));level(allow(mc)));
                                                                Glue  [phi  \mvdash{}\mrightarrow{}  (type(allow(mc));term(allow(md)))]  type(allow(mb));
                                                                glue  [phi  \mvdash{}\mrightarrow{}  term(allow(mc))]  term(allow(mb))))



Date html generated: 2020_05_21-AM-10_44_32
Last ObjectModification: 2020_05_12-PM-05_58_28

Theory : cubical!type!theory


Home Index