Nuprl Lemma : fpf-sub-functionality2

∀[A,A':Type].
  ∀[B:A ⟶ Type]. ∀[C:A' ⟶ Type]. ∀[eq:EqDecider(A)]. ∀[eq':EqDecider(A')]. ∀[f,g:a:A fp-> B[a]].
    (f ⊆ g) supposing (f ⊆ g and (∀a:A. (B[a] ⊆r C[a]))) 
  supposing strong-subtype(A;A')


Proof




Definitions occuring in Statement :  fpf-sub: f ⊆ g,  fpf: a:A fp-> B[a],  deq: EqDecider(T),  strong-subtype: strong-subtype(A;B),  uimplies: b supposing a,  subtype_rel: A ⊆r B,  uall: ∀[x:A]. B[x],  so_apply: x[s],  all: ∀x:A. B[x],  function: x:A ⟶ B[x],  universe: Type
Definitions unfolded in proof :  uall: ∀[x:A]. B[x],  member: t ∈ T,  uimplies: b supposing a,  fpf-sub: f ⊆ g,  all: ∀x:A. B[x],  implies: P ⇒ Q,  subtype_rel: A ⊆r B,  so_lambda: λ2x.t[x],  so_apply: x[s],  top: Top,  prop: ℙ,  strong-subtype: strong-subtype(A;B),  cand: A c∧ B,  guard: {T},  fpf-ap: f(x)
Lemmas referenced :  fpf-dom-type,  subtype-fpf2,  top_wf,  assert_wf,  fpf-dom_wf,  subtype-fpf3,  fpf-sub_witness,  fpf-sub_wf,  all_wf,  subtype_rel_wf,  fpf_wf,  deq_wf,  strong-subtype_wf,  fpf-dom_functionality2,  strong-subtype-deq-subtype,  fpf-ap_wf,  equal_wf
Rules used in proof :  sqequalSubstitution,  sqequalTransitivity,  computationStep,  sqequalReflexivity,  isect_memberFormation,  introduction,  cut,  sqequalHypSubstitution,  lambdaFormation,  extract_by_obid,  isectElimination,  thin,  hypothesisEquality,  because_Cache,  applyEquality,  sqequalRule,  lambdaEquality,  functionExtensionality,  cumulativity,  hypothesis,  independent_isectElimination,  isect_memberEquality,  voidElimination,  voidEquality,  dependent_functionElimination,  equalityTransitivity,  equalitySymmetry,  independent_functionElimination,  productElimination,  functionEquality,  universeEquality,  independent_pairFormation,  hyp_replacement,  applyLambdaEquality

Latex:
\mforall{}[A,A':Type].
    \mforall{}[B:A  {}\mrightarrow{}  Type].  \mforall{}[C:A'  {}\mrightarrow{}  Type].  \mforall{}[eq:EqDecider(A)].  \mforall{}[eq':EqDecider(A')].  \mforall{}[f,g:a:A  fp->  B[a]].
        (f  \msubseteq{}  g)  supposing  (f  \msubseteq{}  g  and  (\mforall{}a:A.  (B[a]  \msubseteq{}r  C[a]))) 
    supposing  strong-subtype(A;A')



Date html generated: 2018_05_21-PM-09_19_00
Last ObjectModification: 2018_02_09-AM-10_17_21

Theory : finite!partial!functions


Home Index