Nuprl Lemma : lifting-spread-decide

[a,F,G,H:Top].
  (let c,d case of inl(x) => F[x] inr(x) => G[x] 
   in H[c;d] case of inl(x) => let c,d F[x] in H[c;d] inr(x) => let c,d G[x] in H[c;d])


Proof




Definitions occuring in Statement :  uall: [x:A]. B[x] top: Top so_apply: x[s1;s2] so_apply: x[s] spread: spread def decide: case of inl(x) => s[x] inr(y) => t[y] sqequal: t
Definitions unfolded in proof :  uall: [x:A]. B[x] member: t ∈ T so_lambda: so_lambda(x,y,z,w.t[x; y; z; w]) so_apply: x[s1;s2;s3;s4] so_lambda: λ2y.t[x; y] top: Top so_apply: x[s1;s2] uimplies: supposing a strict4: strict4(F) and: P ∧ Q all: x:A. B[x] implies:  Q has-value: (a)↓ prop: guard: {T} or: P ∨ Q squash: T so_lambda: λ2x.t[x] so_apply: x[s]
Lemmas referenced :  lifting-strict-decide top_wf equal_wf has-value_wf_base base_wf is-exception_wf
Rules used in proof :  sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity isect_memberFormation introduction cut sqequalRule extract_by_obid sqequalHypSubstitution isectElimination thin baseClosed isect_memberEquality voidElimination voidEquality independent_isectElimination independent_pairFormation lambdaFormation callbyvalueSpread hypothesis equalityTransitivity equalitySymmetry productEquality productElimination sqleReflexivity hypothesisEquality dependent_functionElimination independent_functionElimination baseApply closedConclusion spreadExceptionCases inrFormation because_Cache imageMemberEquality imageElimination exceptionSqequal inlFormation sqequalAxiom

Latex:
\mforall{}[a,F,G,H:Top].
    (let  c,d  =  case  a  of  inl(x)  =>  F[x]  |  inr(x)  =>  G[x] 
      in  H[c;d]  \msim{}  case  a  of  inl(x)  =>  let  c,d  =  F[x]  in  H[c;d]  |  inr(x)  =>  let  c,d  =  G[x]  in  H[c;d])



Date html generated: 2017_04_14-AM-07_20_53
Last ObjectModification: 2017_02_27-PM-02_54_18

Theory : computation


Home Index